/* Р‘РёР±Р»РёРѕС‚РµРєР° РєСѓСЂСЃРѕРІ вЂ” РєР°Р±РёРЅРµС‚ */

/*
 * MEMBERLUX (Р”РёР·Р°Р№РЅ в†’ Р·Р°РіРѕР»РѕРІРѕРє СЂСѓР±СЂРёРєРё В«РЎРєСЂС‹С‚СЊВ») СЃС‚Р°РІРёС‚
 * .page-title-row .page-title { display:none }. РџРµСЂРµР±РёРІР°РµРј С‚РѕР»СЊРєРѕ РЅР° СЃС‚СЂР°РЅРёС†Рµ Р±РёР±Р»РёРѕС‚РµРєРё.
 */
.mbn-library-page--has-title .mbn-library-page-title {
    display: block !important;
}

/*
 * Вертикаль uicons: глиф в ::before, иначе line-height родителя раздувает бокс
 * и иконка «прилипает» к верху рядом с FA (см. docs/verkoshka-admin-ui-guide.md §2).
 */
.mbn-library i[class^="fi-"],
.mbn-library i[class*=" fi-"],
.mbn-library span[class^="fi-"],
.mbn-library span[class*=" fi-"],
.mbn-page-switcher i[class^="fi-"],
.mbn-page-switcher i[class*=" fi-"],
.mbn-page-switcher span[class^="fi-"],
.mbn-page-switcher span[class*=" fi-"],
.mbn-recent i[class^="fi-"],
.mbn-recent i[class*=" fi-"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1 !important;
    vertical-align: middle;
    flex-shrink: 0;
}

.mbn-library i[class^="fi-"]::before,
.mbn-library i[class*=" fi-"]::before,
.mbn-library span[class^="fi-"]::before,
.mbn-library span[class*=" fi-"]::before,
.mbn-page-switcher i[class^="fi-"]::before,
.mbn-page-switcher i[class*=" fi-"]::before,
.mbn-page-switcher span[class^="fi-"]::before,
.mbn-page-switcher span[class*=" fi-"]::before,
.mbn-recent i[class^="fi-"]::before,
.mbn-recent i[class*=" fi-"]::before {
    display: block;
    line-height: 1 !important;
    margin: 0;
}

/* Крупный переключатель Библиотека ↔ Активация */
.mbn-page-switcher-row {
    padding: 18px 0 8px;
    width: 100%;
    max-width: none;
    box-sizing: border-box;
}

.mbn-page-switcher-wrap {
    display: block;
    width: 100%;
    max-width: var(--mbn-shell-max, 1340px);
    margin: 0 auto;
    padding: 0 16px;
    box-sizing: border-box;
}

.mbn-page-switcher {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
    width: 100%;
    max-width: 720px;
    min-height: 52px;
    margin: 0 auto;
    padding: 5px;
    border-radius: 999px;
    background: var(--mbn-tumbler-track, #f0f5f3);
    border: 1px solid var(--mbn-tumbler-border, var(--mbn-border, #e3ebe7));
    box-sizing: border-box;
    isolation: isolate;
    gap: 0;
    text-decoration: none;
    overflow: hidden;
}

.mbn-page-switcher--cols-3 {
    grid-template-columns: 1fr 1fr 1fr;
    max-width: 900px;
}

.mbn-page-switcher__slider {
    position: absolute;
    top: 5px;
    bottom: 5px;
    left: 5px;
    width: calc(50% - 5px);
    border-radius: 999px;
    background: var(--mbn-tumbler-slider, #fff);
    box-shadow: 0 1px 4px var(--mbn-tumbler-slider-shadow, rgba(29, 59, 52, 0.14));
    transition: transform 0.22s ease, width 0.22s ease;
    pointer-events: none;
    z-index: 0;
}

/* (100% − 10px padding) / 3 — как в прототипе toolbar */
.mbn-page-switcher--cols-3 .mbn-page-switcher__slider {
    width: calc(33.333% - 5px * 2 / 3);
}

.mbn-page-switcher--activation .mbn-page-switcher__slider,
.mbn-page-switcher--cols-2.mbn-page-switcher--recent .mbn-page-switcher__slider {
    transform: translateX(100%);
}

.mbn-page-switcher--cols-3.mbn-page-switcher--recent .mbn-page-switcher__slider {
    transform: translateX(100%);
}

.mbn-page-switcher--cols-3.mbn-page-switcher--activation .mbn-page-switcher__slider {
    transform: translateX(200%);
}

.mbn-page-switcher__option {
    position: relative;
    min-width: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.45em;
    min-height: 42px;
    padding: 10px 18px;
    border: 0;
    border-radius: 999px;
    background: transparent !important;
    color: var(--mbn-tumbler-text, #1d3b34);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.25;
    text-align: center;
    text-decoration: none !important;
    box-shadow: none !important;
    cursor: pointer;
    transition: color 0.18s ease, opacity 0.18s ease;
}

.mbn-page-switcher__icon {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.15em;
    height: 1.15em;
    font-size: 1.05em;
    line-height: 1 !important;
    vertical-align: middle;
}
.mbn-page-switcher__icon::before {
    display: block;
    line-height: 1 !important;
    margin: 0;
}
.mbn-page-switcher__icon.mbn-nav-uicon {
    font-family: uicons-regular-rounded !important;
    font-style: normal;
    /* uicons оптически «всплывают» относительно FA / текста */
    transform: translateY(0.06em);
}
.mbn-page-switcher__label {
    display: inline-block;
    min-width: 0;
    text-align: left;
    overflow-wrap: anywhere;
    position: relative;
    top: var(--mbn-font-nudge-text, 0em);
}

/*
 * Компенсация «кривого» шрифта темы — только текст, не иконки.
 * Единица em: масштабируется с размером шрифта строки. По умолчанию 0.
 */
.mbn-library .mbn-course-card__title,
.mbn-library .mbn-material-row__title,
.mbn-library .mbn-level-row__title,
.mbn-library .mbn-library-acc__subtitle,
.mbn-library .mbn-course-card__btn-label,
.mbn-library .mbn-library__refresh-label,
.mbn-library .mbn-library__acc-btn > span:not(.fi):not(.fa),
.mbn-library .mbn-library__view-option {
    position: relative;
    top: var(--mbn-font-nudge-text, 0em);
}

a.mbn-page-switcher__option:hover,
a.mbn-page-switcher__option:focus {
    color: var(--mbn-tumbler-text-active, #256c5a);
    text-decoration: none !important;
}

.mbn-page-switcher__option.is-active {
    color: var(--mbn-tumbler-text-active, #256c5a);
    cursor: default;
}

.mbn-page-switcher.is-navigating {
    pointer-events: none;
}

.mbn-page-switcher.is-navigating.mbn-page-switcher--load-full .mbn-page-switcher__option {
    opacity: 0.28;
}

.mbn-page-switcher.is-navigating.mbn-page-switcher--load-selected .mbn-page-switcher__option.is-active {
    opacity: 0.2;
}

.mbn-page-switcher__loading {
    position: absolute;
    z-index: 3;
    display: none !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 0;
    padding: 0 12px;
    box-sizing: border-box;
    background: rgba(255, 255, 255, 0.92);
    color: var(--mbn-tumbler-text-active, #256c5a);
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    pointer-events: none;
}

.mbn-page-switcher--load-full .mbn-page-switcher__loading {
    inset: 0;
    border-radius: inherit;
    background: rgba(240, 245, 243, 0.88);
}

.mbn-page-switcher--load-selected .mbn-page-switcher__loading {
    top: 5px;
    bottom: 5px;
    left: 5px;
    width: calc(50% - 5px);
    border-radius: 999px;
    box-shadow: 0 1px 4px rgba(29, 59, 52, 0.1);
    transform: translateX(0);
    transition: transform 0.22s ease, width 0.22s ease;
}

.mbn-page-switcher--cols-3.mbn-page-switcher--load-selected .mbn-page-switcher__loading {
    width: calc(33.333% - 5px * 2 / 3);
}

/* 2 колонки: вторая ячейка (Недавние или Активация) */
.mbn-page-switcher--load-selected.mbn-page-switcher--recent .mbn-page-switcher__loading,
.mbn-page-switcher--load-selected.mbn-page-switcher--activation .mbn-page-switcher__loading {
    transform: translateX(100%);
}

/* 3 колонки: средняя / правая */
.mbn-page-switcher--cols-3.mbn-page-switcher--load-selected.mbn-page-switcher--recent .mbn-page-switcher__loading {
    transform: translateX(100%);
}

.mbn-page-switcher--cols-3.mbn-page-switcher--load-selected.mbn-page-switcher--activation .mbn-page-switcher__loading {
    transform: translateX(200%);
}

.mbn-page-switcher.is-loading-visible .mbn-page-switcher__loading {
    display: flex !important;
}

.mbn-page-switcher__spinner {
    display: block;
    flex: 0 0 auto;
    width: 16px;
    height: 16px;
    border: 2px solid rgba(37, 108, 90, 0.22);
    border-top-color: var(--mbn-tumbler-text-active, #256c5a);
    border-radius: 50%;
    animation: mbn-page-switcher-spin 0.7s linear infinite;
    box-sizing: border-box;
}

.mbn-page-switcher__loading-text {
    display: block;
    line-height: 1;
    white-space: nowrap;
}

@keyframes mbn-page-switcher-spin {
    to { transform: rotate(360deg); }
}

html.mbn-page-switcher-pending {
    cursor: progress;
}

.mbn-page-switcher__label--short {
    display: none;
}

/* РџР»Р°РЅС€РµС‚С‹/С‚РµР»РµС„РѕРЅС‹ MEMBERLUX: РЅРµ Р·Р°РІРёСЃРµС‚СЊ РѕС‚ .container { max-width: 370px }. */
@media (max-width: 767px) {
    .mbn-page-switcher-wrap {
        padding: 0 12px;
    }

    .mbn-page-switcher {
        max-width: 100%;
    }
}

@media (max-width: 640px) {
    .mbn-page-switcher {
        min-height: 48px;
    }

    .mbn-page-switcher__option {
        font-size: 15px;
        padding: 10px 12px;
    }

    .mbn-page-switcher__label--full {
        display: none;
    }

    .mbn-page-switcher__label--short {
        display: inline;
    }
}

/* Узкий экран + 3 вкладки: только иконки */
@media (max-width: 480px) {
    .mbn-page-switcher--cols-3 .mbn-page-switcher__label--full,
    .mbn-page-switcher--cols-3 .mbn-page-switcher__label--short {
        display: none !important;
    }

    .mbn-page-switcher--cols-3 .mbn-page-switcher__option {
        padding: 10px 8px;
        gap: 0;
    }

    .mbn-page-switcher--cols-3 .mbn-page-switcher__icon {
        font-size: 18px;
    }
}

/* ——— Недавние ——— */
.mbn-recent-page {
    max-width: var(--mbn-shell-max, 1340px);
    margin: 0 auto;
    padding: 0 16px 40px;
    box-sizing: border-box;
}

.mbn-library-page--has-switcher .mbn-recent-page {
    padding-top: 0;
}

.mbn-recent__title {
    margin: 16px 0 6px;
    font-size: 22px;
    font-weight: 700;
    color: var(--mbn-recent-title, var(--mbn-accent, #256c5a));
}

/* Как «По папкам / По доступам»: равные половины, фиксированная ширина на десктопе. */
.mbn-recent__access-tumbler {
    display: inline-grid !important;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
    width: 260px;
    min-width: min(220px, 100%);
    max-width: 100%;
    margin: 0 0 16px;
    gap: 0;
}

.mbn-recent__access-tumbler .mbn-library__collection-tab {
    flex: none;
    width: 100%;
}

.mbn-recent__access-tumbler .mbn-library__collection-tumbler-slider {
    left: 3px !important;
    width: calc(50% - 3px) !important;
    min-width: 0;
    transform: translateX(0) !important;
    transition: transform 0.22s ease;
}

.mbn-recent__access-tumbler.mbn-library__collection-tumbler--open .mbn-library__collection-tumbler-slider {
    transform: translateX(100%) !important;
}

@media (max-width: 640px) {
    .mbn-recent__access-tumbler {
        display: grid !important;
        width: 100%;
        min-width: 0;
    }
}

.mbn-recent__lead {
    margin: 0 0 16px;
    color: var(--mbn-recent-lead, var(--mbn-muted, #6b857c));
    font-size: 14px;
}

.mbn-recent-page .mbn-continue {
    margin-bottom: 16px;
}

.mbn-recent__empty {
    padding: 20px;
    border: 1px dashed var(--mbn-border, #e3ebe7);
    border-radius: 12px;
    color: var(--mbn-muted, #6b857c);
}

.mbn-recent__list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--mbn-recent-list-gap, 10px);
}

/* Карточки недавних = оформление карточек библиотеки */
.mbn-recent__list .mbn-recent-card {
    margin: 0;
}

/* Author display:flex must not override the closed-material toggle's hidden state. */
.mbn-recent__list .mbn-recent-card[hidden] {
    display: none !important;
}

/* Закрытые карточки библиотеки и Недавних используют одну гамму и полосы. */
.mbn-course-card.is-locked {
    background-color: var(--mbn-locked-card-bg, #fff5f5);
    background-image: repeating-linear-gradient(
        -45deg,
        var(--mbn-locked-stripe-a, rgba(232, 160, 160, 0.18)),
        var(--mbn-locked-stripe-a, rgba(232, 160, 160, 0.18)) 10px,
        var(--mbn-locked-stripe-b, rgba(232, 160, 160, 0.32)) 10px,
        var(--mbn-locked-stripe-b, rgba(232, 160, 160, 0.32)) 20px
    );
    border-color: var(--mbn-locked-card-border, #f0b4b4);
}

.mbn-course-card.is-locked:hover {
    border-color: var(--mbn-locked-card-border-hover, #e08080);
    box-shadow: none;
    background-color: var(--mbn-locked-card-bg-hover, #ffeaea);
    background-image: repeating-linear-gradient(
        -45deg,
        var(--mbn-locked-stripe-a, rgba(232, 160, 160, 0.18)),
        var(--mbn-locked-stripe-a, rgba(232, 160, 160, 0.18)) 10px,
        var(--mbn-locked-stripe-b, rgba(232, 160, 160, 0.32)) 10px,
        var(--mbn-locked-stripe-b, rgba(232, 160, 160, 0.32)) 20px
    );
}

.mbn-course-card.is-locked .mbn-course-card__main {
    background: transparent;
}

.mbn-course-card.is-locked .mbn-course-card__main:hover {
    background: transparent;
}

.mbn-course-card.is-locked .mbn-course-card__title,
.mbn-course-card.is-locked .mbn-course-card__title-link {
    color: var(--mbn-locked-title, #9b2c2c) !important;
}

.mbn-course-card.is-locked .mbn-course-card__icon,
.mbn-course-card.is-locked .mbn-course-card__icon i,
.mbn-course-card.is-locked .mbn-course-card__icon i::before,
.mbn-course-card.is-locked a.mbn-recent-card__icon-link {
    color: var(--mbn-locked-icon, #c53030) !important;
}

.mbn-course-card.is-locked .mbn-course-card__meta.mbn-recent-card__meta,
.mbn-course-card.is-locked .mbn-recent-card__folder-date,
.mbn-course-card.is-locked .mbn-course-card__folder-crumb,
.mbn-course-card.is-locked .mbn-course-card__folder-sep,
.mbn-course-card.is-locked .mbn-course-card__folder-path {
    color: var(--mbn-locked-meta, #b33333) !important;
}

.mbn-course-card.is-locked .mbn-course-card__folder-sep {
    opacity: 0.7;
}

/* Некликабельные крошки не перехватывают клик по карточке. */
.mbn-recent-card .mbn-course-card__folder-crumb.is-current,
.mbn-recent-card .mbn-course-card__folder-sep {
    pointer-events: none;
}

.mbn-course-card.is-locked .mbn-course-card__btn {
    background: var(--mbn-locked-btn-bg, #c53030) !important;
    color: var(--mbn-locked-btn-color, #fff) !important;
}

.mbn-course-card.is-locked .mbn-course-card__btn:hover,
.mbn-course-card.is-locked .mbn-course-card__btn:focus {
    background: var(--mbn-locked-btn-hover-bg, #9b2c2c) !important;
    color: var(--mbn-locked-btn-hover-color, #fff) !important;
}

/* Плашка статуса доступа: один базовый кегль/жирность с обычной badge. */
.mbn-course-card__badge-expired,
.mbn-course-card__badge--locked {
    display: inline-flex;
    align-items: center;
    margin-left: 6px;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: var(--mbn-badge-size, 11px);
    font-weight: var(--mbn-badge-weight, 600);
    vertical-align: middle;
    line-height: 1.2;
}

.mbn-course-card__badge-expired {
    background: var(--mbn-expired-badge-bg, #fde8e8);
    border: 1px solid var(--mbn-expired-badge-border, #f0b4b4);
    color: var(--mbn-expired-badge-color, #9b2c2c);
}

.mbn-course-card__badge--locked {
    background: var(--mbn-locked-badge-bg, #f0f3f2);
    border: 1px solid var(--mbn-locked-badge-border, #d5ded9);
    color: var(--mbn-locked-badge-color, #6b857c);
}

/* Время + папка в один ряд; на узких экранах — две строки. */
.mbn-recent-card .mbn-course-card__meta.mbn-recent-card__meta,
.mbn-continue__meta.mbn-recent-card__meta {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 4px 14px;
    width: 100%;
    color: var(--mbn-recent-meta, var(--mbn-muted, #6b857c));
}

.mbn-recent-card .mbn-recent-card__meta .mbn-course-card__meta-line,
.mbn-continue__meta .mbn-continue__meta-line,
.mbn-recent-card .mbn-recent-card__meta .mbn-recent-card__when,
.mbn-recent-card .mbn-recent-card__meta .mbn-recent-card__folder,
.mbn-continue__meta .mbn-recent-card__when,
.mbn-continue__meta .mbn-recent-card__folder {
    display: inline-flex !important;
    flex-wrap: nowrap;
    align-items: flex-start !important;
    align-self: flex-start;
    gap: 6px;
    min-width: 0;
    max-width: 100%;
    flex: 0 1 auto;
    line-height: 1.2 !important;
    vertical-align: middle;
}

.mbn-recent-card .mbn-recent-card__meta .mbn-course-card__meta-line > :not(.mbn-course-card__meta-icon),
.mbn-continue__meta .mbn-continue__meta-line > :not(.mbn-course-card__meta-icon),
.mbn-recent-card .mbn-recent-card__meta .mbn-recent-card__when > :not(.mbn-course-card__meta-icon),
.mbn-recent-card .mbn-recent-card__meta .mbn-recent-card__folder > :not(.mbn-course-card__meta-icon),
.mbn-continue__meta .mbn-recent-card__when > :not(.mbn-course-card__meta-icon),
.mbn-continue__meta .mbn-recent-card__folder > :not(.mbn-course-card__meta-icon) {
    flex: 0 1 auto;
    min-width: 0;
    line-height: 1.2 !important;
}

.mbn-recent-card .mbn-recent-card__meta .mbn-course-card__meta-icon,
.mbn-continue__meta .mbn-course-card__meta-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center;
    flex: 0 0 auto;
    align-self: flex-start !important;
    box-sizing: border-box;
    width: 1em !important;
    height: 1em !important;
    margin: 0.1em 0 0 !important;
    padding: 0 !important;
    font-size: 0.95em;
    line-height: 1 !important;
    color: inherit;
}

.mbn-recent-card .mbn-recent-card__meta .mbn-course-card__meta-icon i,
.mbn-recent-card .mbn-recent-card__meta .mbn-course-card__meta-icon i::before,
.mbn-continue__meta .mbn-course-card__meta-icon i,
.mbn-continue__meta .mbn-course-card__meta-icon i::before {
    display: block;
    line-height: 1 !important;
    font-size: 1em;
    position: relative;
    top: 0 !important;
    transform: none !important;
}

/* FA-глифы (folder-open-o) сидят выше в em-boxe, чем uicons — лёгкий сдвиг вниз. */
.mbn-recent-card .mbn-recent-card__meta .mbn-course-card__meta-icon .fa,
.mbn-continue__meta .mbn-course-card__meta-icon .fa {
    transform: translateY(0.08em) !important;
}

/* Перебиваем базовый .folder-path { display:flex; margin-bottom:6px } — иначе папка «прыгает» выше времени. */
.mbn-recent-card .mbn-recent-card__meta .mbn-course-card__folder-path,
.mbn-recent-card .mbn-recent-card__meta .mbn-course-card__folder-path--inline,
.mbn-continue__meta .mbn-course-card__folder-path,
.mbn-continue__meta .mbn-course-card__folder-path--inline {
    display: inline-flex !important;
    flex-wrap: wrap;
    align-items: flex-start !important;
    align-self: flex-start !important;
    gap: 4px 6px;
    margin: 0 !important;
    padding: 0 !important;
    min-width: 0;
    line-height: 1.2 !important;
    font-weight: inherit !important;
    vertical-align: middle;
}

.mbn-recent-card .mbn-recent-card__meta .mbn-course-card__folder-crumb,
.mbn-recent-card .mbn-recent-card__meta .mbn-course-card__folder-sep,
.mbn-continue__meta .mbn-course-card__folder-crumb,
.mbn-continue__meta .mbn-course-card__folder-sep {
    line-height: 1.2 !important;
    margin: 0 !important;
    padding: 0 !important;
}

@media (max-width: 640px) {
    .mbn-recent-card .mbn-course-card__meta.mbn-recent-card__meta,
    .mbn-continue__meta.mbn-recent-card__meta {
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: flex-start;
        gap: 2px;
    }
}

/* Предпросмотр «Недавние»: hover как на сайте (клики глушим в JS) */
.mbn-recent-preview .mbn-recent__title {
    margin-top: 8px;
}

.mbn-recent-preview .mbn-continue__btn,
.mbn-recent-preview .mbn-course-card__btn,
.mbn-recent-preview .mbn-course-card__title-link {
    cursor: default;
}

.mbn-library-page--has-switcher .mbn-library {
    margin-top: 8px;
}

/* ——— Панель (без рамки по умолчанию) ——— */
.mbn-library__panel {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 0 0 14px;
    position: relative;
}

.mbn-library--panel-frame .mbn-library__panel {
    padding: 10px;
    background: #fff;
    border: 1px solid var(--mbn-block-border, #e3ebe7);
    border-radius: var(--mbn-radius, 12px);
    box-shadow: var(--mbn-block-shadow, none);
}

.mbn-library__panel-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.mbn-library__panel-row--collection {
    width: 100%;
}

.mbn-library__panel-row--collection .mbn-library__collections {
    width: 100%;
    max-width: 100%;
}

.mbn-library-preview .mbn-library__panel--preview {
    margin: 0 0 14px;
}

.mbn-library__panel-row--main .mbn-library__search {
    flex: 1 1 340px;
    margin: 0;
    min-width: 140px;
}

.mbn-library__quick {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    box-sizing: border-box;
    height: auto;
    min-height: var(--mbn-search-height, 44px);
    padding: 4px;
    border: 1px solid var(--mbn-border, #e3ebe7);
    border-radius: 999px;
    background: var(--mbn-tumbler-track, #f0f5f3);
}

.mbn-library__quick-btn {
    box-sizing: border-box;
    width: calc(var(--mbn-search-height, 44px) - 10px);
    height: calc(var(--mbn-search-height, 44px) - 10px);
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: var(--mbn-muted, #6b857c);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.mbn-library__quick-btn i,
.mbn-library__quick-btn i::before {
    line-height: 1;
    font-size: 15px;
}

.mbn-library__quick-btn.is-on,
.mbn-library__quick-btn[aria-pressed="true"] {
    background: #fff;
    color: var(--mbn-accent, #256c5a);
    box-shadow: 0 1px 3px rgba(29, 59, 52, 0.12);
}

.mbn-library__quick-btn[data-mbn-quick="star"].is-on,
.mbn-library__quick-btn[data-mbn-quick="star"][aria-pressed="true"] {
    color: var(--mbn-mark-star-on, #d4a017);
}

.mbn-library__quick-btn[data-mbn-quick="bookmark"].is-on,
.mbn-library__quick-btn[data-mbn-quick="bookmark"][aria-pressed="true"] {
    color: var(--mbn-mark-bookmark-on, #41A3AF);
}

.mbn-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--mbn-mark-off, #9aaea8);
    cursor: pointer;
    flex: 0 0 auto;
}

.mbn-mark:hover {
    background: #f0f5f3;
    color: var(--mbn-text, #1d3b34);
}

.mbn-mark i,
.mbn-mark i::before {
    line-height: 1;
    font-size: var(--mbn-mark-size, 16px);
}

.mbn-mark.is-on.mbn-mark--star {
    color: var(--mbn-mark-star-on, #d4a017);
    background: transparent;
}

.mbn-mark.is-on.mbn-mark--bookmark {
    color: var(--mbn-mark-bookmark-on, var(--mbn-accent, #41A3AF));
    background: transparent;
}

/* Режим «одна иконка»: опционально жирный контур активной метки (не заливка середины). */
.mbn-library--mark-fill-color.mbn-library--mark-bold .mbn-mark.is-on i,
.mbn-library--mark-fill-color.mbn-library--mark-bold .mbn-mark.is-on i::before {
    -webkit-text-stroke: 0.9px currentColor;
    text-shadow:
        0 0 0.4px currentColor,
        0 0 0.4px currentColor;
}

/* Срезы панели: тот же жирный контур в режиме «одна иконка». */
.mbn-library--quick-fill-color.mbn-library--quick-bold .mbn-library__quick-btn.is-on i,
.mbn-library--quick-fill-color.mbn-library--quick-bold .mbn-library__quick-btn.is-on i::before,
.mbn-library--quick-fill-color.mbn-library--quick-bold .mbn-library__quick-btn[aria-pressed="true"] i,
.mbn-library--quick-fill-color.mbn-library--quick-bold .mbn-library__quick-btn[aria-pressed="true"] i::before {
    -webkit-text-stroke: 0.9px currentColor;
    text-shadow:
        0 0 0.4px currentColor,
        0 0 0.4px currentColor;
}

/* Метки в строках (подпапка / доступ / урок) — компактнее карточечных 32×32 */
.mbn-course-card__folder-marks .mbn-mark,
.mbn-level-row__meta .mbn-mark,
.mbn-material-module__meta .mbn-mark,
.mbn-material-row__aside .mbn-mark {
    flex: 0 0 auto;
    width: var(--mbn-mark-inline-hit, 22px);
    height: var(--mbn-mark-inline-hit, 22px);
    border-radius: 6px;
}

.mbn-course-card__folder-marks .mbn-mark i,
.mbn-course-card__folder-marks .mbn-mark i::before,
.mbn-level-row__meta .mbn-mark i,
.mbn-level-row__meta .mbn-mark i::before,
.mbn-material-module__meta .mbn-mark i,
.mbn-material-module__meta .mbn-mark i::before,
.mbn-material-row__aside .mbn-mark i,
.mbn-material-row__aside .mbn-mark i::before {
    line-height: 1;
    font-size: var(--mbn-mark-inline-size, 13px);
}

.mbn-library__sort {
    display: inline-flex;
    align-items: stretch;
    flex: 0 0 auto;
    margin: 0;
}

.mbn-library__sort select {
    box-sizing: border-box;
    height: var(--mbn-search-height, 44px);
    min-height: var(--mbn-search-height, 44px);
    max-height: var(--mbn-search-height, 44px);
    border: 1px solid var(--mbn-sort-border, var(--mbn-border, #e3ebe7));
    border-radius: var(--mbn-sort-radius, 999px);
    padding: 0 var(--mbn-sort-pad-right, 40px) 0 var(--mbn-sort-pad-left, 14px);
    background: var(--mbn-sort-bg, #fff);
    font: inherit;
    font-size: var(--mbn-sort-size, 13px);
    line-height: 1.2;
    color: var(--mbn-sort-color, var(--mbn-text, #1d3b34));
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%236b857c' d='M1.4.6L6 5.2 10.6.6 12 2 6 8 0 2z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    background-size: 12px 8px;
    outline: none;
    box-shadow: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.mbn-library__sort select:hover {
    border-color: var(--mbn-sort-border-hover, var(--mbn-search-border-hover, #9fbbb2));
}

.mbn-library__sort select:focus,
.mbn-library__sort select:focus-visible {
    outline: none;
    border-color: var(--mbn-sort-border-focus, var(--mbn-search-border-focus, var(--mbn-accent, #256c5a)));
    box-shadow: 0 0 0 3px var(--mbn-sort-focus-ring, var(--mbn-search-focus-ring, rgba(37, 108, 90, 0.18)));
}

.mbn-library__themes-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    box-sizing: border-box;
    height: var(--mbn-search-height, 44px);
    min-height: var(--mbn-search-height, 44px);
    max-height: var(--mbn-search-height, 44px);
    padding: 0 14px;
    border: 1px solid var(--mbn-sort-border, var(--mbn-border, #e3ebe7));
    border-radius: 999px;
    background: var(--mbn-sort-bg, #fff);
    color: var(--mbn-sort-color, var(--mbn-text, #1d3b34));
    font: inherit;
    font-size: var(--mbn-sort-size, 14px);
    font-weight: 600;
    line-height: 1.2;
    cursor: pointer;
    outline: none;
    box-shadow: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, color 0.15s ease;
}

.mbn-library__themes-btn i,
.mbn-library__themes-btn i::before {
    line-height: 1;
}

.mbn-library__themes-btn:hover {
    border-color: var(--mbn-sort-border-hover, var(--mbn-search-border-hover, #9fbbb2));
}

.mbn-library__themes-btn:focus,
.mbn-library__themes-btn:focus-visible {
    outline: none;
    border-color: var(--mbn-sort-border-focus, var(--mbn-search-border-focus, var(--mbn-accent, #256c5a)));
    box-shadow: 0 0 0 3px var(--mbn-sort-focus-ring, var(--mbn-search-focus-ring, rgba(37, 108, 90, 0.18)));
}

.mbn-library__themes-btn[aria-expanded="true"] {
    border-color: var(--mbn-accent, #256c5a);
    color: var(--mbn-accent, #256c5a);
}

.mbn-library__quick-btn[data-mbn-quick="incomplete"].is-on,
.mbn-library__quick-btn[data-mbn-quick="incomplete"][aria-pressed="true"] {
    color: var(--mbn-accent, #256c5a);
}

.mbn-library__quick-btn[data-mbn-show-closed].is-on,
.mbn-library__quick-btn[data-mbn-show-closed][aria-pressed="true"] {
    color: var(--mbn-accent, #256c5a);
}

.mbn-recent__show-closed {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0 0 12px;
    padding: 6px 12px;
    border: 1px solid var(--mbn-border, #e3ebe7);
    border-radius: 999px;
    background: #fff;
    color: var(--mbn-muted, #6b857c);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;
    cursor: pointer;
}

.mbn-recent__show-closed i,
.mbn-recent__show-closed i::before {
    line-height: 1;
}

.mbn-recent__show-closed.is-on,
.mbn-recent__show-closed[aria-pressed="true"] {
    border-color: var(--mbn-accent, #256c5a);
    color: var(--mbn-accent, #256c5a);
}

.mbn-library__themes-chevron {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: 2px;
    transition: transform 0.18s ease;
}

.mbn-library__themes-chevron i,
.mbn-library__themes-chevron i::before {
    line-height: 1;
    font-size: 14px;
}

.mbn-library__themes-btn[aria-expanded="true"] .mbn-library__themes-chevron {
    transform: rotate(180deg);
}

/* Чипы активных срезов / фильтров (под панелью поиска) */
.mbn-library__active-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 10px 0 14px;
}

.mbn-library__active-chips[hidden] {
    display: none !important;
}

.mbn-library__active-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    /* Справа меньше — как у theme-chip: крестик ближе к краю, симметрия с иконкой слева */
    padding: 6px 6px 6px 10px;
    border-radius: var(--mbn-chip-radius, 999px);
    background: var(--mbn-chip-bg, #eef6f3);
    border: 1px solid var(--mbn-chip-border, #cfe8eb);
    font-size: var(--mbn-chip-size, 13px);
    font-weight: 600;
    color: var(--mbn-chip-color, #1d3b34);
}

.mbn-library__active-chip-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    color: var(--mbn-accent, #256c5a);
}

.mbn-library__active-chip-icon i,
.mbn-library__active-chip-icon i::before {
    line-height: 1;
    font-size: 13px;
}

.mbn-library__active-chip-label {
    line-height: 1.2;
}

.mbn-library__active-chip-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 999px;
    background: var(--mbn-chip-count-bg, #dceee8);
    color: var(--mbn-chip-count-color, var(--mbn-accent, #256c5a));
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
}

.mbn-library__active-chip-remove,
.mbn-theme-chip__remove {
    appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    align-self: center;
    box-sizing: border-box;
    width: 18px;
    height: 18px;
    min-width: 18px;
    min-height: 18px;
    padding: 0;
    margin: 0 0 0 2px;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: var(--mbn-muted, #6b857c);
    cursor: pointer;
    /* Как у фильтр-чипов: заметный × + мягкий круг при hover */
    font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
    position: relative;
    top: 0;
    transition: background 0.1s, color 0.1s;
}

.mbn-library__active-chip-remove:hover,
.mbn-library__active-chip-remove:focus,
.mbn-theme-chip__remove:hover,
.mbn-theme-chip__remove:focus {
    color: var(--mbn-text, #1d3b34);
    background: var(--mbn-chip-count-bg, #dceee8);
    outline: none;
}

.mbn-library__themes-bar {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin: 0;
}

.mbn-library__themes-bar[hidden] {
    display: none !important;
}

/* ——— Продолжить ——— */
.mbn-continue {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--mbn-continue-gap, 12px);
    padding: var(--mbn-continue-pad-y, 12px) var(--mbn-continue-pad-x, 14px);
    margin: 0 0 var(--mbn-continue-margin-bottom, 14px);
    background: var(--mbn-continue-bg, linear-gradient(105deg, var(--mbn-accent-soft, #eef6f3), #fff));
    border: 1px solid var(--mbn-continue-border, #cfe8eb);
    border-radius: var(--mbn-continue-radius, var(--mbn-radius, 12px));
    box-shadow: var(--mbn-continue-shadow, none);
    transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.mbn-continue.is-linked {
    cursor: pointer;
}

.mbn-continue.is-linked:hover,
.mbn-continue.is-linked:focus-within {
    border-color: var(--mbn-block-border-hover, #b7d0c7);
    box-shadow: var(--mbn-block-shadow-hover, 0 2px 10px rgba(29, 59, 52, 0.06));
}

.mbn-continue[hidden],
.mbn-continue.is-empty[hidden] {
    display: none !important;
}

.mbn-continue__body {
    flex: 1 1 200px;
    min-width: 0;
}

.mbn-continue__label {
    margin: 0 0 var(--mbn-continue-label-gap, 6px);
    font-size: var(--mbn-continue-label-size, 12px);
    text-transform: var(--mbn-continue-label-transform, uppercase);
    letter-spacing: 0.04em;
    color: var(--mbn-continue-label-color, var(--mbn-accent, #256c5a));
    font-weight: var(--mbn-continue-label-weight, 700);
    line-height: 1.3;
}

/* Как .mbn-course-card__hit-head: иконка слева, текст/мета в одной колонке. */
.mbn-continue__hit-head {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    min-width: 0;
    width: 100%;
}

.mbn-continue__main {
    flex: 1 1 auto;
    min-width: 0;
}

.mbn-continue__icon {
    flex: 0 0 auto;
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 1em;
    height: calc(1em * 1.3);
    /* Иконка напротив названия, не напротив подписи «Продолжить» */
    margin: calc(var(--mbn-continue-label-size, 12px) * 1.3 + var(--mbn-continue-label-gap, 6px)) 0 0;
    padding: 0;
    background: transparent;
    border-radius: 0;
    font-size: var(--mbn-continue-title-size, var(--mbn-row1-size, 16px));
    line-height: 1;
    color: var(--mbn-continue-title-color, var(--mbn-text, #1d3b34));
    text-decoration: none !important;
}

a.mbn-continue__icon:hover,
a.mbn-continue__icon:focus,
.mbn-continue.is-linked:hover .mbn-continue__icon {
    color: var(--mbn-continue-label-color, var(--mbn-accent, #256c5a));
    text-decoration: none !important;
}

.mbn-continue__icon i,
.mbn-continue__icon i::before,
.mbn-continue__icon .fi,
.mbn-continue__icon .fa {
    display: block;
    line-height: 1;
    font-size: 1em;
    width: 1em;
    height: 1em;
    text-align: center;
    color: inherit !important;
}

.mbn-continue__title,
a.mbn-continue__title-link {
    display: block;
    font-weight: var(--mbn-continue-title-weight, 600);
    font-size: var(--mbn-continue-title-size, inherit);
    white-space: normal;
    overflow: visible;
    text-overflow: unset;
    word-break: break-word;
    color: var(--mbn-continue-title-color, var(--mbn-text, #1d3b34));
    text-decoration: none !important;
}

a.mbn-continue__title-link:hover,
a.mbn-continue__title-link:focus,
.mbn-continue.is-linked:hover .mbn-continue__title-link {
    color: var(--mbn-continue-label-color, var(--mbn-accent, #256c5a));
}

.mbn-continue__meta {
    font-size: var(--mbn-continue-meta-size, 13px);
    color: var(--mbn-continue-meta-color, var(--mbn-muted, #6b857c));
    line-height: 1.2;
}

.mbn-continue__meta .mbn-course-card__folder-path,
.mbn-continue__meta .mbn-course-card__folder-crumb,
.mbn-continue__meta .mbn-course-card__folder-sep {
    font-size: inherit;
    font-weight: inherit;
    color: inherit !important;
}

.mbn-recent-card .mbn-course-card__meta.mbn-recent-card__meta {
    font-size: var(--mbn-recent-meta-size, var(--mbn-meta-size, 13px));
    line-height: 1.2;
}

.mbn-recent-card .mbn-recent-card__meta .mbn-course-card__folder-path,
.mbn-recent-card .mbn-recent-card__meta .mbn-course-card__folder-crumb,
.mbn-recent-card .mbn-recent-card__meta .mbn-course-card__folder-sep {
    font-size: inherit;
    font-weight: inherit;
    color: inherit !important;
}

.mbn-continue__progress {
    margin-top: 6px;
}

.mbn-recent-card__progress {
    margin-top: 4px;
    width: 100%;
}

.mbn-continue__actions {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    flex: 0 1 auto;
}

.mbn-continue__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 0;
    border-radius: var(--mbn-continue-btn-radius, var(--mbn-btn-radius, 10px));
    padding: var(--mbn-continue-btn-pad-y, 10px) var(--mbn-continue-btn-pad-x, 16px);
    background: var(--mbn-continue-btn-bg, var(--mbn-btn-bg, var(--mbn-accent, #256c5a)));
    color: var(--mbn-continue-btn-color, var(--mbn-btn-color, #fff)) !important;
    font-weight: var(--mbn-continue-btn-weight, 600);
    font-size: var(--mbn-continue-btn-size, inherit);
    text-decoration: none !important;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease;
}

.mbn-continue__btn i,
.mbn-continue__btn i::before {
    line-height: 1;
    font-size: 1em;
}

.mbn-continue__btn:hover,
.mbn-continue__btn:focus,
.mbn-continue.is-linked:has(.mbn-continue__hit:hover) .mbn-continue__btn:not(.mbn-continue__btn--next),
.mbn-continue.is-linked:has(.mbn-continue__hit:focus) .mbn-continue__btn:not(.mbn-continue__btn--next) {
    background: var(--mbn-continue-btn-hover-bg, var(--mbn-btn-hover, var(--mbn-accent-hover, #1e5a4b)));
    color: var(--mbn-continue-btn-hover-color, var(--mbn-btn-color-hover, #fff)) !important;
    text-decoration: none !important;
}

.mbn-continue__btn.is-disabled {
    opacity: 0.5;
    pointer-events: none;
}

.mbn-continue__progress {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 12px;
}

@media (max-width: 640px) {
    .mbn-continue {
        align-items: stretch;
    }

    .mbn-continue__body {
        flex: 1 1 100%;
    }

    .mbn-continue__actions {
        flex: 1 1 100%;
        justify-content: flex-start;
    }

    .mbn-continue__btn {
        flex: 1 1 auto;
    }
}

.mbn-recent-card__progress {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 12px;
}

.mbn-continue__btn--next {
    background: var(--mbn-continue-next-bg, #fff) !important;
    color: var(--mbn-continue-next-color, var(--mbn-accent, #256c5a)) !important;
    border: 1px solid var(--mbn-continue-next-border, var(--mbn-accent, #256c5a));
}

.mbn-continue__btn--next:hover,
.mbn-continue__btn--next:focus {
    background: var(--mbn-continue-next-hover-bg, var(--mbn-accent, #256c5a)) !important;
    color: var(--mbn-continue-next-hover-color, #fff) !important;
    border-color: var(--mbn-continue-next-hover-bg, var(--mbn-accent, #256c5a));
}

/* Карточки недавних: клик по пустой зоне → урок; кнопка реагирует на hover зоны урока. */
.mbn-recent-card.is-linked {
    cursor: pointer;
}

.mbn-recent-card.is-linked:not(.is-locked):has(.mbn-course-card__title-link:hover) .mbn-course-card__btn,
.mbn-recent-card.is-linked:not(.is-locked):has(.mbn-recent-card__icon-link:hover) .mbn-course-card__btn,
.mbn-recent-card.is-linked:not(.is-locked):has(.mbn-course-card__hit:hover):not(:has(.mbn-course-card__folder-crumb:hover)) .mbn-course-card__btn {
    background: var(--mbn-btn-hover, var(--mbn-accent-hover, #1e5a4b));
    color: var(--mbn-btn-color-hover, #fff);
}

.mbn-recent-card.is-locked.is-linked:has(.mbn-course-card__title-link:hover) .mbn-recent-card__lock-cta,
.mbn-recent-card.is-locked.is-linked:has(.mbn-recent-card__icon-link:hover) .mbn-recent-card__lock-cta,
.mbn-recent-card.is-locked.is-linked:has(.mbn-course-card__hit:hover):not(:has(.mbn-course-card__folder-crumb:hover)) .mbn-recent-card__lock-cta {
    background: var(--mbn-locked-btn-hover-bg, #a36600) !important;
    color: var(--mbn-locked-btn-hover-color, #fff) !important;
}

a.mbn-recent-card__icon-link {
    color: var(--mbn-row1-color, var(--mbn-text, #1d3b34));
    text-decoration: none !important;
}

a.mbn-recent-card__icon-link:hover,
a.mbn-recent-card__icon-link:focus {
    color: var(--mbn-row1-color-hover, var(--mbn-accent-hover, #1e5a4b));
}

.mbn-continue__hist {
    width: 40px;
    height: 40px;
    border-radius: 999px;
    border: 1px solid #cfe8eb;
    background: #fff;
    color: var(--mbn-accent, #256c5a);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.mbn-continue__hist:hover {
    border-color: var(--mbn-continue-btn-bg, var(--mbn-accent, #256c5a));
    color: var(--mbn-continue-btn-bg, var(--mbn-accent, #256c5a));
}

.mbn-continue__hist i,
.mbn-continue__hist i::before {
    line-height: 1;
    font-size: 16px;
}

.mbn-course-card__folder-path--inline {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0;
}

.mbn-library {
    --mbn-accent: #256c5a;
    --mbn-accent-soft: #eef6f3;
    --mbn-accent-hover: #1e5a4b;
    --mbn-crumb-color: #6b857c;
    --mbn-crumb-color-hover: #256c5a;
    --mbn-btn-bg: #256c5a;
    --mbn-btn-bg-image: none;
    --mbn-btn-color: #ffffff;
    --mbn-btn-color-hover: #ffffff;
    --mbn-btn-hover: #1e5a4b;
    --mbn-btn-hover-image: none;
    --mbn-btn-border-width: 0px;
    --mbn-btn-border-color: #256c5a;
    --mbn-btn-border-color-hover: #1e5a4b;
    --mbn-btn-radius: 10px;
    --mbn-btn-size: 14px;
    --mbn-btn-weight: 600;
    --mbn-btn-transform: none;
    --mbn-btn-pad-y: 10px;
    --mbn-btn-pad-x: 16px;
    --mbn-radius: 12px;
    --mbn-block-border: #e3ebe7;
    --mbn-block-shadow: none;
    --mbn-block-shadow-hover: none;
    --mbn-block-border-hover: #b7d0c7;
    --mbn-btn-shadow-hover: none;
    --mbn-badge-bg: #eef6f3;
    --mbn-badge-color: #256c5a;
    --mbn-border: #e3ebe7;
    --mbn-text: #1d3b34;
    --mbn-muted: #667;
    --mbn-tumbler-track: #f0f5f3;
    --mbn-tumbler-border: #e3ebe7;
    --mbn-tumbler-slider: #ffffff;
    --mbn-tumbler-slider-shadow: rgba(29, 59, 52, 0.14);
    --mbn-tumbler-text: #1d3b34;
    --mbn-tumbler-text-active: #256c5a;
    --mbn-tumbler-size: 13px;
    --mbn-tumbler-track-pad: 3px;
    --mbn-tumbler-option-pad-y: 6px;
    --mbn-tumbler-option-pad-x: 12px;
    --mbn-tumbler-min-height: 36px;

    /* === РЈСЂРѕРІРЅРё СЃС‚СЂРѕРє L1вЂ“L5 === */
    /* L1 вЂ” РєРѕСЂРЅРµРІР°СЏ РєР°СЂС‚РѕС‡РєР° / Р·Р°РіРѕР»РѕРІРѕРє Р°РєРєРѕСЂРґРµРѕРЅР° */
    --mbn-row1-color: #256c5a;
    --mbn-row1-color-hover: #1e5a4b;
    --mbn-row1-bg: #ffffff;
    --mbn-row1-bg-hover: #eef6f3;
    --mbn-row1-border-bottom-width: 1px;
    --mbn-row1-border-bottom-color: #e3ebe7;
    --mbn-row1-border-left-width: 0px;
    --mbn-row1-border-left-color: transparent;
    --mbn-row1-size: 16px;
    --mbn-row1-weight: 700;
    --mbn-row1-subtitle-size: 13px;
    /* L2 вЂ” РІР»РѕР¶РµРЅРЅС‹Рµ РєР°СЂС‚РѕС‡РєРё РїР°РїРѕРє РІРЅСѓС‚СЂРё Р°РєРєРѕСЂРґРµРѕРЅР° */
    --mbn-row2-color: #256c5a;
    --mbn-row2-color-hover: #1e5a4b;
    --mbn-row2-bg: #ffffff;
    --mbn-row2-bg-hover: #eef6f3;
    --mbn-row2-border-bottom-width: 1px;
    --mbn-row2-border-bottom-color: #e3ebe7;
    --mbn-row2-border-left-width: 0px;
    --mbn-row2-border-left-color: transparent;
    --mbn-row2-size: 16px;
    --mbn-row2-weight: 700;
    /* L3 вЂ” РјРѕРґСѓР»СЊ (mbn-material-module) */
    --mbn-row3-color: #4a6b62;
    --mbn-row3-color-hover: #256c5a;
    --mbn-row3-bg: #ffffff;
    --mbn-row3-bg-hover: #eef6f3;
    --mbn-row3-border-bottom-width: 1px;
    --mbn-row3-border-bottom-color: #e3ebe7;
    --mbn-row3-border-left-width: 0px;
    --mbn-row3-border-left-color: transparent;
    --mbn-row3-size: 13px;
    --mbn-row3-weight: 600;
    /* L4 вЂ” СѓСЂРѕРє / РјР°С‚РµСЂРёР°Р» (mbn-material-row) */
    --mbn-row4-color: #1d3b34;
    --mbn-row4-color-hover: #256c5a;
    --mbn-row4-bg: #ffffff;
    --mbn-row4-bg-hover: #eef6f3;
    --mbn-row4-border-bottom-width: 0px;
    --mbn-row4-border-bottom-color: #e3ebe7;
    --mbn-row4-border-left-width: 0px;
    --mbn-row4-border-left-color: transparent;
    --mbn-row4-size: 13px;
    --mbn-row4-weight: 400;
    /* L5 вЂ” СЃС‚СЂРѕРєР° СѓСЂРѕРІРЅСЏ (mbn-level-row) */
    --mbn-row5-color: #4a6b62;
    --mbn-row5-color-hover: #256c5a;
    --mbn-row5-bg: #fafcfb;
    --mbn-row5-bg-hover: #eef6f3;
    --mbn-row5-border-bottom-width: 0px;
    --mbn-row5-border-bottom-color: #e3ebe7;
    --mbn-row5-border-left-width: 0px;
    --mbn-row5-border-left-color: transparent;
    --mbn-row5-size: 13px;
    --mbn-row5-weight: 400;

    /* === РЁРµРІСЂРѕРЅС‹ === */
    /* РЎС‚СЂРµР»РєР° СЂР°СЃРєСЂС‹С‚РёСЏ РєР°СЂС‚РѕС‡РєРё/Р°РєРєРѕСЂРґРµРѕРЅР° */
    --mbn-chevron-card-color: #7a948c;
    --mbn-chevron-card-color-hover: #256c5a;

    /* === Count-toggle / РїРµСЂРµРєР»СЋС‡Р°С‚РµР»Рё СЃС‡С‘С‚С‡РёРєРѕРІ === */
    --mbn-toggle-bg: #ffffff;
    --mbn-toggle-bg-hover: #eef6f3;
    --mbn-toggle-bg-open: #eef6f3;
    --mbn-toggle-color: #1d3b34;
    --mbn-toggle-color-hover: #256c5a;
    --mbn-toggle-border: #e3ebe7;
    --mbn-toggle-border-open: #256c5a;
    --mbn-toggle-chevron-color: #7a948c;
    --mbn-toggle-chevron-color-hover: #256c5a;
    --mbn-toggle-chevron-color-open: #256c5a;

    /* Aliases (СЃС‚Р°СЂС‹Рµ СЃРµР»РµРєС‚РѕСЂС‹ / JS) */
    --mbn-chevron-color: var(--mbn-chevron-card-color);
    --mbn-chevron-color-hover: var(--mbn-chevron-card-color-hover);
    --mbn-lesson-color: var(--mbn-row4-color);
    --mbn-lesson-color-hover: var(--mbn-row4-color-hover);
    --mbn-lesson-bg-hover: var(--mbn-row4-bg-hover);

    max-width: none;
    margin: 0 0 40px;
    padding: 0 0 24px;
}

.mbn-library-shell {
    width: 100%;
    max-width: min(var(--mbn-shell-max, 1340px), 100%);
    margin: 0 auto;
    padding: 0 16px;
    box-sizing: border-box;
}

/* РљР°Рє .folders-row Сѓ С€РєРѕР»С‹: 30px РЅР°Рґ РїРѕРёСЃРєРѕРј РїРѕРґ Р·Р°РіРѕР»РѕРІРєРѕРј (РїРѕСЃР»Рµ shorthand margin РІС‹С€Рµ) */
.mbn-library-page--has-title .mbn-library {
    margin-top: 30px;
}

.mbn-library-page:not(.mbn-library-page--has-title) .mbn-library {
    margin-top: 40px;
}

.mbn-library__search {
    display: block;
    margin-bottom: 16px;
    position: relative;
}

/* Чужой CSS/JS иногда рисует label = placeholder над полем */
.mbn-library__search > label,
.mbn-library__search label[for="mbn_q"] {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.mbn-library__toolbar-left {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 12px;
    min-width: 0;
    flex: 0 1 auto;
    order: 1;
}

.mbn-library__meta-block {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    min-width: 0;
}

.mbn-library__freshness {
    display: block;
    margin: 0;
    padding: 0;
    max-width: none;
    font-size: 12px;
    line-height: 1.35;
    color: var(--mbn-muted, #6b857c);
    text-align: left;
    white-space: normal;
}

.mbn-library__refresh-status {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

.mbn-library__refresh-status:empty,
.mbn-library__refresh-status.screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

.mbn-library__refresh {
    flex-shrink: 0;
    width: auto;
    min-width: var(--mbn-refresh-size, 44px);
    height: var(--mbn-refresh-size, 44px);
    padding: 0 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid var(--mbn-refresh-border, #cfd8d4);
    border-radius: var(--mbn-refresh-radius, 10px);
    background: var(--mbn-refresh-bg, #fff);
    color: var(--mbn-refresh-color, var(--mbn-text));
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    cursor: pointer;
    box-sizing: border-box;
}

.mbn-library__refresh-label {
    display: inline;
}

.mbn-library__refresh:hover,
.mbn-library__refresh:focus {
    border-color: var(--mbn-refresh-hover-border, var(--mbn-accent));
    color: var(--mbn-refresh-hover-color, var(--mbn-accent));
    outline: none;
}

.mbn-library__refresh.is-loading {
    opacity: 1;
    cursor: wait;
    border-color: var(--mbn-accent);
    color: var(--mbn-accent);
    pointer-events: none;
}

.mbn-library__refresh.is-loading .fi {
    animation: mbn-spin 0.8s linear infinite;
}

.mbn-library__refresh.is-done {
    border-color: var(--mbn-accent);
    color: var(--mbn-accent);
}

.mbn-library__refresh .fi { display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; width:1em; height:1em; font-size:15px; line-height:1; overflow:visible; position:static; transform:none; }

.mbn-library__refresh .fi::before { display:block; width:1em; height:1em; line-height:1 !important; }

.mbn-library__toolbar-right {
    display: contents;
}

.mbn-library__acc-tools {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 6px;
    flex: 0 0 auto;
    order: 2;
    margin-left: auto;
}

.mbn-library__acc-btn {
    box-sizing: border-box;
    width: auto;
    min-width: 0;
    justify-content: center;
    min-height: var(--mbn-acc-btn-min-height, 34px);
    padding: var(--mbn-acc-btn-pad-y, 0) var(--mbn-acc-btn-pad-x, 10px);
    border: 1px solid var(--mbn-acc-btn-border, var(--mbn-border));
    border-radius: var(--mbn-acc-btn-radius, 8px);
    background: var(--mbn-acc-btn-bg, #fff);
    color: var(--mbn-acc-btn-color, var(--mbn-text));
    font-size: var(--mbn-acc-btn-size, 12px);
    font-weight: var(--mbn-acc-btn-weight, 500);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.mbn-library__acc-btn .fi { display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; width:1em; height:1em; font-size:15px; line-height:1; overflow:visible; position:static; transform:none; }

.mbn-library__acc-btn .fi::before { display:block; width:1em; height:1em; line-height:1 !important; }

.mbn-library__acc-btn:hover,
.mbn-library__acc-btn:focus {
    border-color: var(--mbn-acc-btn-hover-border, var(--mbn-accent));
    color: var(--mbn-acc-btn-hover-color, var(--mbn-accent));
    outline: none;
}

.mbn-library__search-field {
    position: relative;
    flex: 1;
    min-width: 0;
}

.mbn-library__search-icon {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    pointer-events: none;
    color: var(--mbn-search-placeholder, #7a948c);
    font-size: calc(var(--mbn-search-size, 16px) * 1.05);
    line-height: 1;
}

.mbn-library__search input[type="search"] {
    width: 100%;
    height: var(--mbn-search-height, 44px) !important;
    min-height: var(--mbn-search-height, 44px) !important;
    max-height: var(--mbn-search-height, 44px) !important;
    padding: 0 40px 0 40px;
    border: 1px solid var(--mbn-search-border, #cfd8d4);
    border-radius: var(--mbn-search-radius, 10px);
    font-size: var(--mbn-search-size, 16px);
    line-height: var(--mbn-search-height, 44px);
    box-sizing: border-box;
    background: var(--mbn-search-bg, #fff);
    color: var(--mbn-search-color, var(--mbn-text));
    outline: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.mbn-library__search input[type="search"]::placeholder {
    color: var(--mbn-search-placeholder, #7a948c);
    opacity: 1;
}

.mbn-library__search input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none;
    appearance: none;
    display: none;
}

.mbn-library__search input[type="search"]:hover {
    border-color: var(--mbn-search-border-hover, #9fbbb2);
}

.mbn-library__search input[type="search"]:focus,
.mbn-library__search input[type="search"]:focus-visible {
    border-color: var(--mbn-search-border-focus, var(--mbn-accent));
    outline: none;
    box-shadow: 0 0 0 3px var(--mbn-search-focus-ring, rgba(37, 108, 90, 0.18));
}

.mbn-library__search-clear {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    width: 28px;
    height: 28px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: var(--mbn-search-clear-color, #666677);
    font-size: var(--mbn-search-clear-size, 16px);
    line-height: 1;
    cursor: pointer;
}

.mbn-library__search-clear:hover,
.mbn-library__search-clear:focus {
    background: var(--mbn-search-clear-hover-bg, #eef6f3);
    color: var(--mbn-search-clear-hover-color, #1d3b34);
    outline: none;
}

.mbn-library__search-clear[hidden] {
    display: none !important;
}

.mbn-library__toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    gap: 10px 12px;
    margin: 0 0 14px;
}

.mbn-library__meta {
    margin: 0;
    color: var(--mbn-meta-color, var(--mbn-muted));
    font-size: var(--mbn-meta-size, 14px);
    font-weight: var(--mbn-meta-weight, 400);
}

.mbn-library__view-tumbler {
    position: relative;
    display: inline-grid;
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
    /* В одном ряду — фиксированная ширина; на своей строке (.is-wrapped) — 100%. */
    flex: 0 1 240px;
    width: 240px;
    min-width: min(200px, 100%);
    max-width: 100%;
    min-height: var(--mbn-tumbler-min-height, 36px);
    padding: var(--mbn-tumbler-track-pad, 3px);
    border-radius: 999px;
    background: var(--mbn-tumbler-track, #f0f5f3);
    border: 1px solid var(--mbn-tumbler-border, var(--mbn-border, #e3ebe7));
    box-sizing: border-box;
    isolation: isolate;
    gap: 0;
    order: 3;
}

.mbn-library__view-tumbler.is-wrapped {
    flex: 1 1 100%;
    width: 100%;
    margin-left: 0 !important;
}

/* РќРµС‚ РєРЅРѕРїРѕРє Р°РєРєРѕСЂРґРµРѕРЅР° вЂ” С‚СѓРјР±Р»РµСЂ СЃР°Рј СѓРµР·Р¶Р°РµС‚ РІРїСЂР°РІРѕ. */
.mbn-library__toolbar-left + .mbn-library__view-tumbler:not(.is-wrapped) {
    margin-left: auto;
}

.mbn-library__view-tumbler-slider {
    position: absolute;
    top: var(--mbn-tumbler-track-pad, 3px);
    bottom: var(--mbn-tumbler-track-pad, 3px);
    left: var(--mbn-tumbler-track-pad, 3px);
    width: calc(50% - var(--mbn-tumbler-track-pad, 3px));
    border-radius: 999px;
    background: var(--mbn-tumbler-slider, #fff);
    box-shadow: 0 1px 3px var(--mbn-tumbler-slider-shadow, rgba(29, 59, 52, 0.14));
    transition: transform 0.22s ease;
    pointer-events: none;
    z-index: 0;
}

.mbn-library__view-tumbler--levels .mbn-library__view-tumbler-slider {
    transform: translateX(100%);
}

.mbn-library__view-option {
    position: relative;
    z-index: 1;
    min-height: 0;
    height: auto;
    padding: var(--mbn-tumbler-option-pad-y, 6px) var(--mbn-tumbler-option-pad-x, 12px);
    border: 0;
    border-radius: 999px;
    background: transparent !important;
    color: var(--mbn-tumbler-text, var(--mbn-text));
    font-size: var(--mbn-tumbler-size, 13px);
    font-weight: 500;
    line-height: 1.35;
    cursor: pointer;
    box-shadow: none !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: color 0.2s ease;
}

.mbn-library__view-option:hover,
.mbn-library__view-option:focus {
    background: transparent !important;
    outline: none;
    color: var(--mbn-accent);
}

.mbn-library__view-option:focus-visible {
    outline: 2px solid var(--mbn-accent);
    outline-offset: 2px;
}

.mbn-library__view-option.is-active {
    background: transparent !important;
    color: var(--mbn-tumbler-text-active, var(--mbn-accent));
    font-weight: 600;
    box-shadow: none !important;
}

.mbn-library__list-wrap {
    position: relative;
    min-height: 80px;
}

.mbn-library__list {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-height: 80px;
}

.mbn-library__list-wrap.is-loading .mbn-library__list {
    pointer-events: none;
    opacity: 0.4;
}

.mbn-library__list-wrap.is-loading .mbn-library__pager,
.mbn-library.is-refreshing .mbn-library__pager {
    pointer-events: none;
    opacity: 0.45;
}

.mbn-library__loading {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: auto;
    z-index: 3;
    display: none;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    padding: 12px 16px;
    min-height: 48px;
    background: rgba(247, 250, 248, 0.94);
    border: 1px solid var(--mbn-block-border, var(--mbn-border));
    border-radius: var(--mbn-radius, 12px);
    box-shadow: 0 4px 14px rgba(29, 59, 52, 0.08);
    color: var(--mbn-text);
    font-size: 14px;
    font-weight: 600;
    text-align: left;
}

.mbn-library__list-wrap.is-loading .mbn-library__loading,
.mbn-library__loading:not([hidden]) {
    display: flex;
}

.mbn-library__loading[hidden] {
    display: none !important;
}

.mbn-library__spinner {
    width: 22px;
    height: 22px;
    border: 2px solid #c5d9d2;
    border-top-color: var(--mbn-accent);
    border-radius: 50%;
    animation: mbn-spin 0.7s linear infinite;
    flex-shrink: 0;
}

.mbn-library__status {
    margin: 8px 0 0;
    min-height: 0;
    font-size: 13px;
    color: var(--mbn-accent, #256c5a);
    font-weight: 600;
}

.mbn-library__status.is-visible:not(.screen-reader-text) {
    margin-top: 10px;
    min-height: 1.2em;
}

.mbn-library.is-refreshing .mbn-library__toolbar,
.mbn-library.is-refreshing .mbn-library__search {
    pointer-events: none;
    opacity: 0.65;
}

@keyframes mbn-spin {
    to { transform: rotate(360deg); }
}

.mbn-library__view-option:disabled {
    opacity: 0.55;
    cursor: wait;
}

.mbn-course-card {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0;
    background: var(--mbn-row1-bg, #fff);
    border: 1px solid var(--mbn-block-border, var(--mbn-border));
    border-radius: var(--mbn-radius, 12px);
    box-shadow: var(--mbn-block-shadow, none);
    transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
    overflow: hidden;
}

.mbn-course-card__btn {
    flex: 0 0 auto;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: auto;
    max-width: 100%;
    min-height: 0;
    padding: var(--mbn-btn-pad-y, 10px) var(--mbn-btn-pad-x, 16px);
    border: var(--mbn-btn-border-width, 0) solid var(--mbn-btn-border-color, var(--mbn-accent, #256c5a));
    border-radius: var(--mbn-btn-radius, 10px);
    background-color: var(--mbn-btn-bg, var(--mbn-accent));
    background-image: var(--mbn-btn-bg-image, none);
    color: var(--mbn-btn-color, #fff) !important;
    text-decoration: none !important;
    font-weight: var(--mbn-btn-weight, 600);
    font-size: var(--mbn-btn-size, 14px);
    text-transform: var(--mbn-btn-transform, none);
    letter-spacing: var(--mbn-btn-tracking, normal);
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}

.mbn-course-card__btn .fi,
.mbn-course-card__btn .fa {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.95em;
    line-height: 1;
}

/* Uicons РѕРїС‚РёС‡РµСЃРєРё В«РІСЃРїР»С‹РІР°СЋС‚В» вЂ” С‚РѕР»СЊРєРѕ РґР»СЏ .fi */
.mbn-course-card__btn .fi {
    transform: translateY(0.06em);
}

.mbn-course-card__btn:hover,
.mbn-course-card__btn:focus {
    background-color: var(--mbn-btn-hover, var(--mbn-accent-hover, #1e5a4b));
    background-image: var(--mbn-btn-hover-image, none);
    border-color: var(--mbn-btn-border-color-hover, var(--mbn-btn-border-color, #1e5a4b));
    color: var(--mbn-btn-color-hover, var(--mbn-btn-color, #fff)) !important;
    outline: none;
    box-shadow: var(--mbn-btn-shadow-hover, none);
}

.mbn-course-card__badge {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    border-radius: 999px;
    background: var(--mbn-badge-bg, var(--mbn-accent-soft));
    color: var(--mbn-badge-color, var(--mbn-accent));
    font-size: var(--mbn-badge-size, 11px);
    font-weight: var(--mbn-badge-weight, 600);
    line-height: 1.2;
}

/* После базовой .badge — иначе зелёный фон перебивает истёкший (одинаковая специфичность). */
.mbn-course-card__badge.mbn-course-card__badge-expired,
.mbn-course-card__badge-expired {
    background: var(--mbn-expired-badge-bg, #fde8e8);
    border: 1px solid var(--mbn-expired-badge-border, #f0b4b4);
    color: var(--mbn-expired-badge-color, #9b2c2c);
}

.mbn-course-card:hover {
    border-color: var(--mbn-block-border-hover, #b7d0c7);
    box-shadow: var(--mbn-block-shadow-hover, none);
}

.mbn-course-card__main:hover {
    background: var(--mbn-row1-bg-hover, var(--mbn-accent-soft, #eef6f3));
}

.mbn-course-card__main {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 6px 12px;
    padding: 10px 16px;
    border-left: var(--mbn-row1-border-left-width, 0px) solid var(--mbn-row1-border-left-color, transparent);
}

.mbn-course-card__main.is-expandable {
    position: relative;
    padding-right: 16px;
    cursor: pointer;
    user-select: none;
}

/* РЎС‚СЂРµР»РєР° вЂ” flex-СЌР»РµРјРµРЅС‚ РІ РєРѕРЅС†Рµ СЂСЏРґР° (РЅРµ absolute РїРѕРІРµСЂС… РєРЅРѕРїРєРё) */
.mbn-course-card__main.is-expandable::after {
    content: "";
    flex: 0 0 auto;
    align-self: center;
    order: 99;
    width: 0.7em;
    height: 0.7em;
    margin: 0 0 0 8px;
    border-right: 2.5px solid var(--mbn-chevron-card-color, #7a948c);
    border-bottom: 2.5px solid var(--mbn-chevron-card-color, #7a948c);
    transform: rotate(45deg);
    transition: transform 0.15s ease, border-color 0.15s ease;
    pointer-events: none;
}

.mbn-course-card__main.is-expandable:hover::after,
.mbn-course-card__main.is-expandable:focus-visible::after {
    border-right-color: var(--mbn-chevron-card-color-hover, var(--mbn-accent, #256c5a));
    border-bottom-color: var(--mbn-chevron-card-color-hover, var(--mbn-accent, #256c5a));
}

.mbn-course-card__main.is-expandable[aria-expanded="true"]::after {
    transform: rotate(-135deg);
}

.mbn-course-card__hit {
    flex: 1 1 14rem;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 2px;
    color: inherit;
    text-decoration: none !important;
    outline: none;
}

/* Level-card: РєСЂРѕС€РєРё/РїР°РїРєР° РЅР°Рґ hit-head (РёРєРѕРЅРєР°+Р·Р°РіРѕР»РѕРІРѕРє) */
.mbn-library-level-card > .mbn-course-card__main > .mbn-course-card__hit {
    flex-direction: column;
    align-items: stretch;
    gap: 2px;
}

.mbn-course-card__hit-head {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: 12px;
    min-width: 0;
    width: 100%;
}

.mbn-course-card__hit-head > .mbn-course-card__icon {
    flex: 0 0 auto;
    align-self: flex-start;
}

.mbn-course-card__hit-head > .mbn-course-card__body {
    flex: 1 1 auto;
    min-width: 0;
}

.mbn-course-card__main.is-expandable:focus-visible {
    outline: 2px solid var(--mbn-accent, #256c5a);
    outline-offset: -2px;
}

/* Иконка L1 (корневая карточка / аккордеон) */
.mbn-course-card__icon {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 1em;
    height: calc(1em * 1.3);
    margin: 0;
    padding: 0;
    font-size: var(--mbn-row1-size, 16px);
    line-height: 1;
    color: var(--mbn-row1-color, var(--mbn-text, #1d3b34));
    transition: color 0.15s ease;
}

.mbn-course-card__icon .fi,
.mbn-course-card__icon .fa {
    display: block;
    font-size: 1em;
    line-height: 1;
    width: 1em;
    height: 1em;
    text-align: center;
    color: inherit !important;
}

/* FA/Uicons: РѕРїС‚РёРєР° РІ СЃР»РѕС‚Рµ РїРµСЂРІРѕР№ СЃС‚СЂРѕРєРё (РєР°Рє Сѓ level-row) */
.mbn-course-card__icon .fa {
    transform: translateY(0.05em);
}

.mbn-course-card__icon .fi {
    transform: translateY(0.06em);
}

.mbn-course-card__body {
    flex: 1;
    min-width: 0;
}

.mbn-course-card__title-wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 0 0 4px;
}

.mbn-course-card__title-wrap .mbn-course-card__title {
    margin: 0;
}

/* Р’ С€Р°РїРєРµ С‚РѕР»СЊРєРѕ РЅР°Р·РІР°РЅРёРµ (+ Р±РµР№РґР¶) вЂ” Р±РµР· Р»РёС€РЅРµРіРѕ РЅРёР¶РЅРµРіРѕ РїРѕР»СЏ */
.mbn-course-card__body > .mbn-course-card__title-wrap:last-child {
    margin-bottom: 0;
}

/* Р—Р°РіРѕР»РѕРІРѕРє L1 */
.mbn-course-card__title {
    margin: 0 0 4px;
    font-size: var(--mbn-row1-size, 16px);
    line-height: 1.3;
    color: var(--mbn-row1-color, var(--mbn-text));
    font-weight: var(--mbn-row1-weight, 700);
    transition: color 0.15s ease;
    overflow-wrap: break-word;
    word-break: normal;
}

/* Ссылка в заголовке — наследует цвет строки (не accent) */
.mbn-course-card__title-link {
    color: var(--mbn-row1-color, inherit) !important;
    text-decoration: none !important;
    transition: color 0.15s ease;
}

/* РЎСЃС‹Р»РєР° РЅР° СѓСЂРѕРє РІ РјРµС‚Р°-СЃС‚СЂРѕРєРµ (L4) */
.mbn-course-card__meta-lesson-link {
    color: var(--mbn-row4-color, var(--mbn-text, #1d3b34)) !important;
    text-decoration: none !important;
    font-weight: 500;
}

.mbn-course-card__meta-lesson-link:hover,
.mbn-course-card__meta-lesson-link:focus {
    color: var(--mbn-row4-color-hover, var(--mbn-accent, #256c5a)) !important;
    text-decoration: underline;
}

.mbn-course-card__folder-path {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px 6px;
    margin: 0 0 6px;
    font-size: var(--mbn-meta-size, 13px);
    font-weight: 500;
    line-height: 1.3;
    color: var(--mbn-crumb-color, var(--mbn-muted, #6b857c));
}

/* Крошки над hit-head — на всю ширину info-блока, без отступа слева */
.mbn-course-card__hit > .mbn-course-card__folder-path {
    width: 100%;
    margin: 0 0 6px;
    padding-left: 0;
    box-sizing: border-box;
}

.mbn-library-acc__heading > .mbn-course-card__folder-path {
    width: 100%;
    margin: 0 0 6px;
    padding-left: 0;
    box-sizing: border-box;
}

.mbn-course-card__folder-crumb {
    color: var(--mbn-crumb-color, var(--mbn-muted, #6b857c)) !important;
    text-decoration: none !important;
}

.mbn-course-card__folder-crumb:hover,
.mbn-course-card__folder-crumb:focus {
    color: var(--mbn-crumb-color-hover, var(--mbn-accent, #256c5a)) !important;
    text-decoration: underline;
}

.mbn-course-card__folder-crumb.is-current {
    color: var(--mbn-crumb-color, var(--mbn-muted, #6b857c)) !important;
    cursor: default;
}

.mbn-course-card__folder-sep {
    opacity: 0.55;
}

.mbn-course-card__hit:focus-visible {
    outline: 2px solid var(--mbn-accent);
    outline-offset: 2px;
    border-radius: 6px;
}

.mbn-course-card__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    /* РќРµ СЃР¶РёРјР°С‚СЊ: РїСЂРё РЅРµС…РІР°С‚РєРµ РјРµСЃС‚Р° Р±Р»РѕРє С†РµР»РёРєРѕРј РЅР° СЃР»РµРґСѓСЋС‰СѓСЋ СЃС‚СЂРѕРєСѓ */
    flex: 0 0 auto;
    order: 50;
    justify-content: flex-end;
    align-content: center;
    max-width: 100%;
    margin-left: auto;
}

.mbn-course-card__actions .mbn-course-card__btn {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
}

.mbn-course-card__actions .mbn-course-card__count-toggle {
    flex: 0 0 auto;
    white-space: nowrap;
    max-width: 100%;
}

.mbn-course-card__actions .mbn-course-card__badge {
    flex: 0 0 auto;
}

.mbn-course-card.is-navigating {
    position: relative;
    opacity: 0.72;
    pointer-events: none;
    cursor: wait;
}

.mbn-course-card.is-navigating::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 20px;
    margin: -10px 0 0 -10px;
    border: 2px solid var(--mbn-border);
    border-top-color: var(--mbn-accent);
    border-radius: 50%;
    animation: mbn-spin 0.7s linear infinite;
    z-index: 2;
}

.mbn-library.is-navigating {
    cursor: wait;
}

/* Toggle-РєРЅРѕРїРєР° (РїСЂРѕСЃС‚РѕР№ РїРµСЂРµРєР»СЋС‡Р°С‚РµР»СЊ СѓСЂРѕРІРЅРµР№ Р±РµР· count) */
.mbn-course-card__toggle {
    width: 36px;
    height: 36px;
    border: 1px solid var(--mbn-toggle-border, var(--mbn-border));
    border-radius: 8px;
    background: var(--mbn-toggle-bg, #fff);
    cursor: pointer;
    position: relative;
}

.mbn-course-card__toggle::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 8px;
    height: 8px;
    border-right: 2px solid var(--mbn-toggle-chevron-color, #7a948c);
    border-bottom: 2px solid var(--mbn-toggle-chevron-color, #7a948c);
    transform: translate(-50%, -65%) rotate(45deg);
    transition: transform 0.15s ease, border-color 0.15s ease;
}

.mbn-course-card__toggle:hover::after,
.mbn-course-card__toggle:focus-visible::after {
    border-right-color: var(--mbn-toggle-chevron-color-hover, var(--mbn-accent, #256c5a));
    border-bottom-color: var(--mbn-toggle-chevron-color-hover, var(--mbn-accent, #256c5a));
}

.mbn-course-card__toggle[aria-expanded="true"]::after {
    transform: translate(-50%, -35%) rotate(-135deg);
}

/* L5 вЂ” СЃРїРёСЃРѕРє СѓСЂРѕРІРЅРµР№; РіСЂР°РЅРёС†Р° СЃРІРµСЂС…Сѓ = row1 border-bottom */
.mbn-course-card__levels-list {
    border-top: var(--mbn-row1-border-bottom-width, 1px) solid var(--mbn-row1-border-bottom-color, #e3ebe7);
    padding: 0;
    background: var(--mbn-row5-bg, #fafcfb);
}

/* L5 вЂ” СЃС‚СЂРѕРєР° СѓСЂРѕРІРЅСЏ */
.mbn-level-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    gap: 6px 8px;
    padding: 6px 16px;
    font-size: var(--mbn-row5-size, 13px);
    font-weight: var(--mbn-row5-weight, 400);
    color: var(--mbn-row5-color, #4a6b62);
    line-height: 1.35;
    background: var(--mbn-row5-bg, #fafcfb);
    border-left: var(--mbn-row5-border-left-width, 0px) solid var(--mbn-row5-border-left-color, transparent);
    cursor: pointer;
    transition: background 0.15s ease, box-shadow 0.15s ease, color 0.15s ease;
}

.mbn-level-row__main {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    flex: 1 1 12rem;
    min-width: 0;
}

.mbn-level-row:hover {
    background: var(--mbn-row5-bg-hover, var(--mbn-accent-soft, #eef6f3));
    color: var(--mbn-row5-color-hover, var(--mbn-row5-color, #4a6b62));
}

.mbn-level-row.is-active {
    background: var(--mbn-accent-soft, #eef6f3);
    box-shadow: inset 3px 0 0 var(--mbn-accent, #256c5a);
}

.mbn-level-row:focus {
    outline: none;
}

.mbn-level-row:focus-visible {
    background: var(--mbn-row5-bg-hover, var(--mbn-accent-soft, #eef6f3));
    box-shadow: inset 3px 0 0 var(--mbn-accent, #256c5a);
}

.mbn-level-row + .mbn-level-row {
    border-top: var(--mbn-row5-border-bottom-width, 0px) solid var(--mbn-row5-border-bottom-color, #e3ebe7);
}

.mbn-level-row__name {
    min-width: 0;
    max-width: calc(100% - 1em - 8px);
    align-self: flex-start;
    flex: 1 1 auto;
    display: block;
    line-height: 1.35;
    overflow-wrap: break-word;
    word-break: normal;
    hyphens: auto;
}

.mbn-level-row__meta {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    align-self: center;
    gap: 4px 8px;
    margin-left: auto;
    flex: 0 0 auto;
    max-width: 100%;
    min-height: 0;
}

.mbn-course-card__progress-wrap {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex: 0 0 auto;
}

.mbn-course-card__progress-bar {
    display: block;
    width: 88px;
    height: 6px;
    border-radius: 999px;
    background: #e4ece9;
    overflow: hidden;
}

.mbn-course-card__progress-bar > i {
    display: block;
    height: 100%;
    border-radius: 999px;
    background: var(--mbn-accent, #256c5a);
}

.mbn-course-card__progress {
    font-weight: 600;
    color: var(--mbn-accent, #256c5a);
}

/* Статус ДЗ — в одной строке с названием (перенос только при нехватке места) */
.mbn-material-row__main {
    align-items: flex-start;
}

.mbn-material-row__aside {
    align-items: center;
}

.mbn-material-row__title-wrap .mbn-material-row__title {
    flex: 0 1 auto;
    width: auto;
    max-width: 100%;
}

.mbn-hw {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    height: 20px;
    padding: 0 7px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
    flex: 0 0 auto;
}

.mbn-hw i,
.mbn-hw i::before {
    line-height: 1;
    font-size: 11px;
}

.mbn-hw--done {
    background: #e7f5ef;
    color: #2d8b6e;
    border: 1px solid #b7dfc9;
}

.mbn-hw--checking {
    background: #fff3e8;
    color: #9a5b12;
    border: 1px solid #f0c9a0;
}

.mbn-hw--idle {
    background: #f0f3f2;
    color: #6b857c;
    border: 1px solid #d5ded9;
}

.mbn-hw--rejected {
    background: #fdeeee;
    color: #a94442;
    border: 1px solid #e8b4b3;
}

/* Count-toggle (РєРЅРѕРїРєР° СЃ РєРѕР»РёС‡РµСЃС‚РІРѕРј СѓСЂРѕРєРѕРІ/СѓСЂРѕРІРЅРµР№) */
.mbn-course-card__count-toggle {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 6px 10px;
    border: 1px solid var(--mbn-toggle-border, var(--mbn-border));
    border-radius: 8px;
    background: var(--mbn-toggle-bg, #fff);
    color: var(--mbn-toggle-color, var(--mbn-text));
    font: inherit;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;
    white-space: nowrap;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.mbn-course-card__count-toggle:hover,
.mbn-course-card__count-toggle:focus {
    background: var(--mbn-toggle-bg-hover, var(--mbn-accent-soft, #eef6f3));
    border-color: var(--mbn-toggle-border-open, var(--mbn-accent, #256c5a));
    color: var(--mbn-toggle-color-hover, var(--mbn-accent, #256c5a));
    outline: none;
}

.mbn-course-card__count-toggle[aria-expanded="true"] {
    background: var(--mbn-toggle-bg-open, var(--mbn-toggle-bg-hover, #eef6f3));
    border-color: var(--mbn-toggle-border-open, var(--mbn-accent, #256c5a));
    color: var(--mbn-toggle-color-hover, var(--mbn-accent, #256c5a));
}

.mbn-course-card__count-chevron {
    position: relative;
    width: 10px;
    height: 10px;
    flex: 0 0 auto;
}

/* РЁРµРІСЂРѕРЅ count-toggle (РЅРµ РјРѕРґСѓР»СЊ) */
.mbn-course-card__count-chevron::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 40%;
    width: 6px;
    height: 6px;
    border-right: 2px solid var(--mbn-toggle-chevron-color, #7a948c);
    border-bottom: 2px solid var(--mbn-toggle-chevron-color, #7a948c);
    transform: translate(-50%, -50%) rotate(45deg);
    transition: transform 0.15s ease, border-color 0.15s ease;
}

.mbn-course-card__count-toggle:hover .mbn-course-card__count-chevron::after,
.mbn-course-card__count-toggle:focus .mbn-course-card__count-chevron::after,
.mbn-course-card__count-toggle:focus-visible .mbn-course-card__count-chevron::after {
    border-right-color: var(--mbn-toggle-chevron-color-hover, var(--mbn-accent, #256c5a));
    border-bottom-color: var(--mbn-toggle-chevron-color-hover, var(--mbn-accent, #256c5a));
}

.mbn-course-card__count-toggle[aria-expanded="true"] .mbn-course-card__count-chevron::after {
    top: 55%;
    transform: translate(-50%, -50%) rotate(-135deg);
    border-right-color: var(--mbn-toggle-chevron-color-open, var(--mbn-toggle-chevron-color-hover, #256c5a));
    border-bottom-color: var(--mbn-toggle-chevron-color-open, var(--mbn-toggle-chevron-color-hover, #256c5a));
}

/* L3: arrow follows row text color (row3) */
.mbn-material-module .mbn-course-card__count-chevron::after {
    border-right-color: currentColor;
    border-bottom-color: currentColor;
}

.mbn-course-card__materials-list {
    border-top: var(--mbn-row1-border-bottom-width, 1px) solid var(--mbn-row1-border-bottom-color, #e3ebe7);
    padding: 0;
    background: transparent;
}

.mbn-library {
    --mbn-nest-step: 14px;
}

@media (max-width: 640px) {
    .mbn-library {
        --mbn-nest-step: 10px;
    }
}

.mbn-library--nest-indent .mbn-course-card__materials-list {
    /* Р‘РµР· В«РєРѕСЂРѕР±РєРёВ»: РѕС‚СЃС‚СѓРїС‹ СѓСЂРѕРєРѕРІ СЃР°РјРё РѕС‚РґРµР»СЏСЋС‚ РІР»РѕР¶РµРЅРЅРѕСЃС‚СЊ. */
    margin: 0;
    padding: 0;
    background: transparent;
    border: 0;
    border-top: var(--mbn-row1-border-bottom-width, 1px) solid var(--mbn-row1-border-bottom-color, #e3ebe7);
    border-radius: 0;
}

/* Р“СЂР°РЅРёС†Р° РїРѕРґ С€Р°РїРєРѕР№ вЂ” С‚РѕР»СЊРєРѕ РєРѕСЂРЅРµРІР°СЏ РєР°СЂС‚РѕС‡РєР° / Р°РєРєРѕСЂРґРµРѕРЅ (РЅРµ РІР»РѕР¶РµРЅРЅС‹Рµ РїР°РїРєРё) */
.mbn-library__list > .mbn-course-card > .mbn-course-card__main + .mbn-course-card__materials-list,
.mbn-library__list > .mbn-course-card > .mbn-course-card__main + .mbn-course-card__levels-list,
.mbn-library__list > .mbn-library-level-card > .mbn-course-card__main + .mbn-course-card__materials-list,
.mbn-library-group__list > .mbn-course-card > .mbn-course-card__main + .mbn-course-card__materials-list,
.mbn-library-group__list > .mbn-course-card > .mbn-course-card__main + .mbn-course-card__levels-list,
.mbn-library-group__list > .mbn-library-level-card > .mbn-course-card__main + .mbn-course-card__materials-list,
.mbn-library-preview > .mbn-course-card > .mbn-course-card__main + .mbn-course-card__materials-list,
.mbn-library-preview > .mbn-course-card > .mbn-course-card__main + .mbn-course-card__levels-list,
.mbn-library-acc > .mbn-library-acc__body {
    border-top: var(--mbn-row1-border-bottom-width, 1px) solid var(--mbn-row1-border-bottom-color, #e3ebe7);
}

.mbn-library--nest-indent .mbn-library__list > .mbn-course-card > .mbn-course-card__main + .mbn-course-card__materials-list,
.mbn-library--nest-indent .mbn-library-group__list > .mbn-course-card > .mbn-course-card__main + .mbn-course-card__materials-list,
.mbn-library--nest-indent.mbn-library-preview > .mbn-course-card > .mbn-course-card__main + .mbn-course-card__materials-list,
.mbn-library-preview.mbn-library--nest-indent > .mbn-course-card > .mbn-course-card__main + .mbn-course-card__materials-list {
    border-top: var(--mbn-row1-border-bottom-width, 1px) solid var(--mbn-row1-border-bottom-color, #e3ebe7);
}

/* Р¤РѕРЅ РѕСЃРЅРѕРІРЅРѕР№ (РєРѕСЂРЅРµРІРѕР№) С€Р°РїРєРё вЂ” L1 */
.mbn-library__list > .mbn-course-card > .mbn-course-card__main,
.mbn-library__list > .mbn-library-level-card > .mbn-course-card__main,
.mbn-library-group__list > .mbn-library-level-card > .mbn-course-card__main,
.mbn-library-preview > .mbn-course-card > .mbn-course-card__main,
.mbn-library-preview > .mbn-library-level-card > .mbn-course-card__main {
    background: var(--mbn-row1-bg, #ffffff);
}

.mbn-library__list > .mbn-course-card > .mbn-course-card__main:hover,
.mbn-library__list > .mbn-library-level-card > .mbn-course-card__main:hover,
.mbn-library-group__list > .mbn-library-level-card > .mbn-course-card__main:hover,
.mbn-library-preview > .mbn-course-card > .mbn-course-card__main:hover,
.mbn-library-preview > .mbn-library-level-card > .mbn-course-card__main:hover {
    background: var(--mbn-row1-bg-hover, var(--mbn-accent-soft, #eef6f3));
}

/* Р¤РѕРЅ Р°РєРєРѕСЂРґРµРѕРЅР° L1 */
.mbn-library__list > .mbn-library-acc > .mbn-library-acc__summary,
.mbn-library-preview > .mbn-library-acc > .mbn-library-acc__summary {
    background: var(--mbn-row1-bg, #ffffff);
}

.mbn-library__list > .mbn-library-acc > .mbn-library-acc__summary:hover,
.mbn-library-preview > .mbn-library-acc > .mbn-library-acc__summary:hover {
    background: var(--mbn-row1-bg-hover, var(--mbn-accent-soft, #eef6f3));
}

.mbn-library--nest-indent .mbn-material-module,
.mbn-library--nest-indent .mbn-material-row {
    padding-left: calc(12px + (var(--mbn-nest-depth, 0) * var(--mbn-nest-step, 14px)));
}

.mbn-library--nest-indent .mbn-material-module[data-mbn-depth="1"],
.mbn-library--nest-indent .mbn-material-row[data-mbn-depth="1"] {
    --mbn-nest-depth: 1;
}

.mbn-library--nest-indent .mbn-material-row[data-mbn-depth="2"] {
    --mbn-nest-depth: 2;
}

@media (max-width: 640px) {
    .mbn-library--nest-indent .mbn-material-row[data-mbn-depth="2"] {
        --mbn-nest-depth: 1.35;
    }
}

.mbn-library--nest-flat .mbn-course-card__materials-list {
    background: #fff;
}

.mbn-library--nest-flat .mbn-material-module {
    margin-top: 0;
    padding-top: 8px;
    border-top: var(--mbn-row3-border-bottom-width, 1px) solid var(--mbn-row3-border-bottom-color, #e3ebe7);
}

.mbn-library--nest-flat .mbn-material-group:first-child .mbn-material-module,
.mbn-library--nest-flat .mbn-material-module:first-child {
    margin-top: 0;
    padding-top: 8px;
    border-top: 0;
}

/* L3 вЂ” РјРѕРґСѓР»СЊ */
.mbn-material-module {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 8px;
    padding: 8px 16px;
    font-size: var(--mbn-row3-size, 13px);
    font-weight: var(--mbn-row3-weight, 600);
    color: var(--mbn-row3-color, #4a6b62);
    line-height: 1.35;
    text-transform: none;
    background: var(--mbn-row3-bg, #ffffff);
    border-top: var(--mbn-row3-border-bottom-width, 1px) solid var(--mbn-row3-border-bottom-color, #e3ebe7);
    border-left: var(--mbn-row3-border-left-width, 0px) solid var(--mbn-row3-border-left-color, transparent);
    cursor: pointer;
    user-select: none;
    transition: background 0.15s ease, color 0.15s ease;
}

.mbn-material-group:first-child .mbn-material-module,
.mbn-course-card__materials-list > .mbn-material-row:first-child {
    border-top: 0;
}

.mbn-material-module:hover,
.mbn-material-module:focus {
    background: var(--mbn-row3-bg-hover, var(--mbn-accent-soft, #eef6f3));
    color: var(--mbn-row3-color-hover, var(--mbn-accent, #256c5a));
    outline: none;
}

.mbn-material-module[aria-expanded="true"] .mbn-course-card__count-chevron::after {
    top: 55%;
    transform: translate(-50%, -50%) rotate(-135deg);
}

/* РРєРѕРЅРєР° L3: flex-start Рє РїРµСЂРІРѕР№ СЃС‚СЂРѕРєРµ; РіР»РёС„ РІ СЃР»РѕС‚Рµ line-height */
.mbn-material-module__icon {
    align-self: flex-start;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 1.15em;
    height: calc(1em * 1.35);
    color: inherit;
    line-height: 1;
}

.mbn-material-module__icon .fa,
.mbn-material-module__icon .fi {
    display: block;
    width: 1em;
    height: 1em;
    font-size: 1em;
    line-height: 1;
    color: inherit !important;
}

.mbn-material-module__icon .fa {
    transform: translateY(0.05em);
}

.mbn-material-module__icon .fi {
    transform: translateY(0.06em);
}

.mbn-material-module__icon .fa::before,
.mbn-material-module__icon .fi::before {
    display: block;
    line-height: 1;
}

.mbn-material-module__main {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    flex: 1 1 12rem;
    min-width: 0;
}

.mbn-material-module__title {
    min-width: 0;
    flex: 1 1 auto;
    align-self: flex-start;
    line-height: 1.35;
    overflow-wrap: break-word;
    word-break: normal;
}

.mbn-material-module__path {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    align-self: flex-start;
    gap: 0.35em;
    min-width: 0;
    flex: 1 1 auto;
    font: inherit;
    line-height: 1.35;
    color: inherit;
}

.mbn-material-module__meta {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    align-self: center;
    gap: 4px;
    margin-left: auto;
    min-height: 0;
    color: inherit;
    white-space: nowrap;
}

.mbn-material-module__count {
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
    color: inherit;
}

.mbn-material-module__crumb {
    color: inherit !important;
    text-decoration: none !important;
    font-weight: 600;
    transition: color 0.15s ease;
}

/* Отдельная ссылка в крошках — свой hover; иначе наследуют цвет строки (и при hover строки). */
a.mbn-material-module__crumb:hover,
a.mbn-material-module__crumb:focus {
    color: var(--mbn-crumb-color-hover, var(--mbn-row3-color-hover, var(--mbn-accent, #256c5a))) !important;
    text-decoration: underline;
    outline: none;
}

.mbn-material-module__crumb.is-current {
    color: inherit !important;
}

.mbn-material-module__sep {
    color: inherit;
    opacity: 0.55;
    font-weight: 500;
}

.mbn-course-card.is-level-filtering .mbn-material-row.is-level-match {
    background: var(--mbn-accent-soft, #eef6f3);
    box-shadow: inset 3px 0 0 var(--mbn-accent, #256c5a);
}

.mbn-course-card.is-level-filtering .is-level-hidden {
    display: none !important;
}

.mbn-course-card.is-level-filtering .mbn-course-card__meta.is-level-match {
    background: var(--mbn-accent-soft, #eef6f3);
    box-shadow: inset 3px 0 0 var(--mbn-accent, #256c5a);
    border-radius: 6px;
    padding: 2px 6px;
}

.mbn-course-card__module-line .mbn-material-module__path {
    font-size: inherit;
    color: inherit;
    flex: 1;
    min-width: 0;
}

/* L4 вЂ” РіСЂР°РЅРёС†Р° РјРµР¶РґСѓ СѓСЂРѕРєР°РјРё */
.mbn-material-row + .mbn-material-row {
    border-top: var(--mbn-row4-border-bottom-width, 0px) solid var(--mbn-row4-border-bottom-color, #e3ebe7);
}

.mbn-material-module + .mbn-material-row,
.mbn-material-row + .mbn-material-module {
    border-top: 0;
}

.mbn-course-card__count-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    align-self: center;
    box-sizing: border-box;
    width: 1em;
    height: 1em;
    line-height: 1;
    color: inherit;
}

.mbn-course-card__count-icon .fa,
.mbn-course-card__count-icon .fi {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1em;
    height: 1em;
    margin: 0;
    padding: 0;
    font-size: 1em;
    line-height: 1;
}

.mbn-course-card__count-icon .fi {
    transform: translateY(0.06em);
}

.mbn-course-card__count-icon .fa::before,
.mbn-course-card__count-icon .fi::before {
    display: block;
    line-height: 1;
}

.mbn-library-acc__title,
.mbn-library-group__title {
    display: inline-flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: 8px;
    max-width: 100%;
    min-width: 0;
}

/* Иконка уровня в аккордеоне L1 */
.mbn-library-acc__level-icon {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    height: 1.3em;
    color: var(--mbn-row1-color, var(--mbn-text, #1d3b34));
    line-height: 0;
    transition: color 0.15s ease;
}

.mbn-library-acc__level-icon .fa,
.mbn-library-acc__level-icon .fi {
    font-size: 0.92em;
    line-height: 1;
    color: inherit !important;
}

.mbn-library-acc__level-icon .fi {
    transform: translateY(0.06em);
}

.mbn-library-acc__summary:hover .mbn-library-acc__level-icon,
.mbn-library-acc__summary:focus .mbn-library-acc__level-icon,
.mbn-library-acc__summary:focus-visible .mbn-library-acc__level-icon {
    color: var(--mbn-row1-color-hover, var(--mbn-accent-hover, #1e5a4b));
}

.mbn-library-acc__summary:hover .mbn-library-acc__title,
.mbn-library-acc__summary:focus .mbn-library-acc__title,
.mbn-library-acc__summary:focus-visible .mbn-library-acc__title {
    color: var(--mbn-row1-color-hover, var(--mbn-accent-hover, #1e5a4b));
}

/* РРєРѕРЅРєР° L5: flex-start Рє РїРµСЂРІРѕР№ СЃС‚СЂРѕРєРµ С‚РµРєСЃС‚Р°; РіР»РёС„ С†РµРЅС‚СЂРёСЂСѓРµС‚СЃСЏ РІ СЃР»РѕС‚Рµ line-height */
.mbn-level-row__icon {
    align-self: flex-start;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 1em;
    height: calc(1em * 1.35);
    margin-top: 0;
    color: inherit;
    font-size: var(--mbn-row5-size, 13px);
    line-height: 1;
    transition: color 0.15s ease;
}

.mbn-level-row__icon .fa,
.mbn-level-row__icon .fi {
    font-size: 1em;
    line-height: 1;
    display: block;
    color: inherit !important;
}

/* FA С‡Р°СЃС‚Рѕ В«СЃРёРґРёС‚В» РІС‹С€Рµ РѕРїС‚РёС‡РµСЃРєРѕРіРѕ С†РµРЅС‚СЂР° вЂ” Р»С‘РіРєРёР№ СЃРґРІРёРі РІРЅРёР· РІ СЃР»РѕС‚Рµ РїРµСЂРІРѕР№ СЃС‚СЂРѕРєРё */
.mbn-level-row__icon .fa {
    transform: translateY(0.05em);
}

.mbn-level-row__icon .fi {
    transform: translateY(0.06em);
}

.mbn-course-card__hit--static {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 2px;
    flex: 1 1 auto;
    min-width: 0;
    text-decoration: none;
    color: inherit;
}

/* L4 вЂ” РјР°С‚РµСЂРёР°Р»/СѓСЂРѕРє */
.mbn-material-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px 8px;
    padding: 8px 16px;
    font-size: var(--mbn-row4-size, 13px);
    font-weight: var(--mbn-row4-weight, 400);
    color: var(--mbn-row4-color, var(--mbn-text)) !important;
    background: var(--mbn-row4-bg, #ffffff);
    border-left: var(--mbn-row4-border-left-width, 0px) solid var(--mbn-row4-border-left-color, transparent);
    text-decoration: none !important;
    border-radius: 0;
    transition: background 0.15s ease, color 0.15s ease;
}

.mbn-material-row__link {
    display: flex;
    align-items: flex-start;
    flex: 1 1 12rem;
    min-width: 0;
    text-decoration: none !important;
    color: inherit !important;
}

.mbn-material-row__main {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    flex: 1 1 12rem;
    min-width: 0;
}

.mbn-material-row__link .mbn-material-row__main {
    flex: 1 1 auto;
    width: 100%;
}

/* РРєРѕРЅРєР° L4 вЂ” С‚РѕС‚ Р¶Рµ С†РІРµС‚, С‡С‚Рѕ С‚РµРєСЃС‚ СЃС‚СЂРѕРєРё */
.mbn-material-row__icon {
    align-self: flex-start;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 1em;
    height: 1.35em;
    margin-top: 0;
    font-size: var(--mbn-row4-size, 13px);
    line-height: 1.35;
    color: inherit;
}

.mbn-material-row__icon .fi,
.mbn-material-row__icon .fa {
    display: block;
    font-size: 1em;
    line-height: 1;
    width: 1em;
    height: 1em;
    text-align: center;
    color: inherit !important;
}

.mbn-material-row__icon .fi {
    transform: translateY(0.06em);
}

.mbn-material-row__aside {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-left: auto;
    max-width: 100%;
}

.mbn-material-row:last-child {
    padding-bottom: 8px;
}

.mbn-material-row.is-open:hover,
.mbn-material-row:hover {
    background: var(--mbn-row4-bg-hover, var(--mbn-accent-soft, #eef6f3));
    color: var(--mbn-row4-color-hover, var(--mbn-accent, #256c5a)) !important;
}

.mbn-material-row.is-locked {
    color: var(--mbn-at-locked-row-color, #8a9b94);
    cursor: default;
}

/* ——— Закрытые уроки: единый стек (AT drip / нет доступа) ——— */
.mbn-at-locked-stack {
    position: relative;
    margin: 0;
    border-top: 1px solid var(--mbn-at-locked-divider, #e3ebe7);
}

/* Не дублировать линию: её уже даёт строка уровня/модуля сверху. */
.mbn-level-row + .mbn-at-locked-stack,
.mbn-material-module + .mbn-at-locked-stack,
.mbn-material-group + .mbn-at-locked-stack,
.mbn-course-card__materials-list > .mbn-at-locked-stack:first-child {
    border-top: 0;
}

.mbn-at-locked-stack__bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
}

.mbn-library--at-locked-c .mbn-at-locked-stack--at .mbn-at-locked-stack__bg {
    background: repeating-linear-gradient(
        -45deg,
        var(--mbn-at-locked-stripe-a, rgba(193, 193, 193, 0.16)),
        var(--mbn-at-locked-stripe-a, rgba(193, 193, 193, 0.16)) 10px,
        var(--mbn-at-locked-stripe-b, rgba(193, 193, 193, 0.28)) 10px,
        var(--mbn-at-locked-stripe-b, rgba(193, 193, 193, 0.28)) 20px
    );
}

.mbn-library--at-locked-b .mbn-at-locked-stack--at .mbn-at-locked-stack__bg {
    background: var(--mbn-at-locked-stack-bg, #f4f6f5);
}

/* AT drip: клик полностью выключен — без ссылок на урок. */
.mbn-at-locked-stack--at .mbn-material-row.is-locked,
.mbn-at-locked-stack--at .mbn-material-row.is-at-drip {
    position: relative;
    z-index: 1;
    pointer-events: none;
    user-select: none;
    background: transparent !important;
    cursor: default;
    color: var(--mbn-at-locked-row-color, #8a9b94);
}

.mbn-at-locked-stack--at .mbn-at-locked-more {
    position: relative;
    z-index: 1;
    pointer-events: auto;
}

.mbn-at-locked-stack--at .mbn-material-row.is-locked:hover {
    background: transparent !important;
    color: var(--mbn-at-locked-row-color, #8a9b94) !important;
}

/* Нет доступа / истёк: красные полоски + клик на покупку. */
.mbn-library--at-locked-c .mbn-at-locked-stack--buy .mbn-at-locked-stack__bg {
    background: repeating-linear-gradient(
        -45deg,
        var(--mbn-locked-stripe-a, rgba(232, 160, 160, 0.18)),
        var(--mbn-locked-stripe-a, rgba(232, 160, 160, 0.18)) 10px,
        var(--mbn-locked-stripe-b, rgba(232, 160, 160, 0.32)) 10px,
        var(--mbn-locked-stripe-b, rgba(232, 160, 160, 0.32)) 20px
    );
}

.mbn-library--at-locked-b .mbn-at-locked-stack--buy .mbn-at-locked-stack__bg {
    background: var(--mbn-locked-card-bg, #fff5f5);
}

.mbn-at-locked-stack--buy {
    border-top-color: var(--mbn-locked-divider, #f0b4b4);
}

.mbn-at-locked-stack--buy .mbn-material-row.is-locked.is-no-access {
    position: relative;
    z-index: 1;
    pointer-events: auto;
    user-select: auto;
    background: transparent !important;
    cursor: pointer;
    color: var(--mbn-locked-row-color, var(--mbn-locked-title, #9b2c2c));
}

.mbn-at-locked-stack--buy .mbn-material-row.is-locked.is-no-access:hover {
    background: var(--mbn-locked-row-hover, rgba(255, 234, 234, 0.9)) !important;
    color: var(--mbn-locked-row-color, var(--mbn-locked-title, #9b2c2c)) !important;
}

.mbn-at-locked-stack--buy .mbn-material-row.is-locked.is-no-access .mbn-material-row__icon,
.mbn-at-locked-stack--buy .mbn-material-row.is-locked.is-no-access .mbn-material-row__icon i,
.mbn-at-locked-stack--buy .mbn-material-row.is-locked.is-no-access .mbn-material-row__icon i::before {
    color: var(--mbn-locked-icon, #c53030) !important;
}

/* Разделители внутри стека: соседние строки + первый урок хвоста после раскрытия. */
.mbn-at-locked-stack .mbn-material-row.is-locked + .mbn-material-row.is-locked,
.mbn-at-locked-rest .mbn-material-row.is-locked + .mbn-material-row.is-locked {
    border-top: 1px solid var(--mbn-at-locked-divider, rgba(227, 235, 231, 0.7));
}

/* Линия между 1-м и хвостом — только на контейнере rest (не дублировать на first-child). */
.mbn-at-locked-stack > .mbn-material-row.is-locked + .mbn-at-locked-rest {
    border-top: 1px solid var(--mbn-at-locked-divider, rgba(227, 235, 231, 0.7));
}

.mbn-at-locked-stack.is-expanded > .mbn-material-row.is-locked + .mbn-at-locked-rest > .mbn-material-row.is-locked:first-child {
    border-top: 0;
}

.mbn-at-locked-stack--buy .mbn-material-row.is-locked + .mbn-material-row.is-locked,
.mbn-at-locked-stack--buy > .mbn-material-row.is-locked + .mbn-at-locked-rest,
.mbn-at-locked-stack--buy .mbn-at-locked-more {
    border-top-color: var(--mbn-locked-divider, #f0b4b4);
}

.mbn-at-locked-hint {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    font-weight: 600;
    color: var(--mbn-at-locked-hint-color, #6b857c);
    white-space: nowrap;
    line-height: 1.2;
}

.mbn-at-locked-hint--buy {
    color: var(--mbn-locked-hint-color, var(--mbn-locked-meta, #b33333));
}

.mbn-at-locked-hint i,
.mbn-at-locked-hint i::before {
    display: block;
    line-height: 1;
    font-size: 12px;
}

.mbn-library--at-locked-b .mbn-at-locked-hint {
    padding: 2px 8px;
    border-radius: 999px;
    background: var(--mbn-at-locked-hint-bg, #e8ecea);
}

.mbn-library--at-locked-b .mbn-at-locked-hint--buy {
    background: var(--mbn-locked-badge-bg, #fde8e8);
}

/* Компактная CTA покупки в строке урока (не раздувает высоту). */
.mbn-material-row__buy {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    flex: 0 0 auto;
    max-width: 100%;
    margin: 0;
    padding: 2px 8px;
    border: 1px solid var(--mbn-locked-btn-bg, #c53030);
    border-radius: 999px;
    background: var(--mbn-locked-btn-bg, #c53030);
    color: var(--mbn-locked-btn-color, #fff) !important;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none !important;
    white-space: nowrap;
    vertical-align: middle;
}

.mbn-material-row__buy:hover,
.mbn-material-row__buy:focus {
    background: var(--mbn-locked-btn-hover-bg, #9b2c2c);
    border-color: var(--mbn-locked-btn-hover-bg, #9b2c2c);
    color: var(--mbn-locked-btn-hover-color, #fff) !important;
}

.mbn-material-row__buy i,
.mbn-material-row__buy i::before {
    display: block;
    line-height: 1;
    font-size: 11px;
    color: inherit !important;
}

/* Иконка папки по доступности видимых уроков. */
.mbn-folder-access {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    color: var(--mbn-folder-icon-open, var(--mbn-accent, #256c5a)) !important;
}

.mbn-folder-access i,
.mbn-folder-access i::before {
    color: inherit !important;
}

.mbn-folder-access--mixed {
    color: var(--mbn-folder-icon-mixed, #c47d00) !important;
}

.mbn-folder-access--locked {
    color: var(--mbn-folder-icon-locked, #c53030) !important;
}

.mbn-course-card__main:hover .mbn-course-card__icon.mbn-folder-access--open,
.mbn-course-card__main:focus-within .mbn-course-card__icon.mbn-folder-access--open,
.mbn-course-card__hit-head:has(.mbn-course-card__title-link:hover) .mbn-course-card__icon.mbn-folder-access--open,
.mbn-course-card__hit-head:has(.mbn-course-card__title-link:focus) .mbn-course-card__icon.mbn-folder-access--open {
    color: var(--mbn-folder-icon-open, var(--mbn-accent, #256c5a)) !important;
}

.mbn-course-card__main:hover .mbn-course-card__icon.mbn-folder-access--mixed,
.mbn-course-card__main:focus-within .mbn-course-card__icon.mbn-folder-access--mixed,
.mbn-course-card__hit-head:has(.mbn-course-card__title-link:hover) .mbn-course-card__icon.mbn-folder-access--mixed,
.mbn-course-card__hit-head:has(.mbn-course-card__title-link:focus) .mbn-course-card__icon.mbn-folder-access--mixed {
    color: var(--mbn-folder-icon-mixed, #c47d00) !important;
}

.mbn-course-card__main:hover .mbn-course-card__icon.mbn-folder-access--locked,
.mbn-course-card__main:focus-within .mbn-course-card__icon.mbn-folder-access--locked,
.mbn-course-card__hit-head:has(.mbn-course-card__title-link:hover) .mbn-course-card__icon.mbn-folder-access--locked,
.mbn-course-card__hit-head:has(.mbn-course-card__title-link:focus) .mbn-course-card__icon.mbn-folder-access--locked {
    color: var(--mbn-folder-icon-locked, #c53030) !important;
}

@media (max-width: 640px) {
    .mbn-at-locked-hint__text {
        max-width: 9em;
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

.mbn-at-locked-more {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    margin: 0;
    padding: 8px 12px;
    border: 0;
    border-top: 1px solid var(--mbn-at-locked-divider, rgba(227, 235, 231, 0.85));
    background: rgba(255, 255, 255, 0.55);
    color: var(--mbn-accent, #256c5a);
    font: inherit;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
}

.mbn-at-locked-more:hover {
    background: rgba(255, 255, 255, 0.8);
}

.mbn-at-locked-more i,
.mbn-at-locked-more i::before {
    line-height: 1;
    font-size: 12px;
}

.mbn-at-locked-stack.is-expanded .mbn-at-locked-more__chevron {
    transform: rotate(180deg);
}

.mbn-material-row__title {
    flex: 1 1 auto;
    min-width: 0;
    max-width: none;
    align-self: flex-start;
    line-height: 1.35;
    overflow-wrap: break-word;
    word-break: normal;
    hyphens: auto;
}

.mbn-material-row__level {
    flex: 0 0 auto;
    font-size: 12px;
    color: var(--mbn-muted, #6b857c);
}

.mbn-material-row.is-locked .mbn-material-row__level {
    color: #b7c4be;
}

.mbn-library-acc__aside {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    flex: 0 0 auto;
    order: 50;
    justify-content: flex-end;
    align-content: center;
    margin-left: auto;
    max-width: 100%;
}

.mbn-library-acc__aside .mbn-course-card__btn {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
}

.mbn-library__pager {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 18px;
}

.mbn-library__pager[hidden] {
    display: none !important;
}

.mbn-library__pager:has(.mbn-library__mbl-pager) {
    margin-top: 0;
}

/* MEMBERLUX .pagenavi-row { margin: -20px 0 50px } СЃСЉРµРґР°РµС‚ РѕС‚СЃС‚СѓРї РЅР°Рґ РїР°РіРёРЅР°С†РёРµР№ */
.mbn-library .mbn-library__pager .pagenavi-row.mbn-library__mbl-pager {
    margin: 30px 0 0;
    overflow: visible;
    width: 100%;
}

.mbn-library__pager-pages {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 4px;
    align-items: center;
}

.mbn-library__pager-link,
.mbn-library__pager-current,
.mbn-library__pager-jump button,
.mbn-library__pager-more {
    box-sizing: border-box;
    min-height: 36px;
    min-width: 36px;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--mbn-pager-link-border, var(--mbn-border));
    border-radius: 8px;
    background: var(--mbn-pager-link-bg, #fff);
    color: var(--mbn-pager-link-color, var(--mbn-text));
    text-decoration: none !important;
    font-family: inherit;
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.mbn-library__pager-current {
    background: var(--mbn-pager-current-bg, var(--mbn-accent-soft));
    border-color: var(--mbn-pager-current-border, var(--mbn-accent));
    color: var(--mbn-pager-current-color, var(--mbn-accent));
    font-weight: 700;
    cursor: default;
}

.mbn-library__pager-link:hover,
.mbn-library__pager-link:focus {
    border-color: var(--mbn-pager-link-hover-border, var(--mbn-accent));
    color: var(--mbn-pager-link-hover-color, var(--mbn-accent));
    background: var(--mbn-pager-link-hover-bg, var(--mbn-accent-soft));
    text-decoration: none !important;
    outline: none;
}

.mbn-library__pager-jump {
    display: inline-flex;
    gap: 6px;
    align-items: center;
    margin-left: 4px;
}

.mbn-library__pager-jump input {
    width: 64px;
    height: 36px;
    border: 1px solid var(--mbn-border);
    border-radius: 8px;
    padding: 0 8px;
    font-size: 14px;
    font-family: inherit;
    color: var(--mbn-text);
}

.mbn-library__pager-jump button,
.mbn-library__pager-more {
    background: var(--mbn-pager-action-bg, var(--mbn-btn-bg, var(--mbn-accent)));
    border-color: var(--mbn-pager-action-bg, var(--mbn-btn-bg, var(--mbn-accent)));
    color: var(--mbn-pager-action-color, var(--mbn-btn-color, #fff));
    font-weight: var(--mbn-pager-action-weight, var(--mbn-btn-weight, 600));
    font-size: var(--mbn-pager-action-size, var(--mbn-btn-size, 14px));
    text-transform: var(--mbn-pager-action-transform, var(--mbn-btn-transform, none));
    border-radius: var(--mbn-pager-action-radius, var(--mbn-btn-radius, 8px));
    padding: var(--mbn-pager-action-pad-y, 8px) var(--mbn-pager-action-pad-x, 14px);
    min-height: 0;
}

.mbn-library__pager-jump button:hover,
.mbn-library__pager-jump button:focus,
.mbn-library__pager-more:hover,
.mbn-library__pager-more:focus {
    background: var(--mbn-pager-action-hover, var(--mbn-btn-hover, var(--mbn-accent-hover, #1e5a4b)));
    border-color: var(--mbn-pager-action-hover, var(--mbn-btn-hover, var(--mbn-accent-hover, #1e5a4b)));
    color: var(--mbn-pager-action-color, var(--mbn-btn-color, #fff));
}

.mbn-library__pager-lazy {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 40px;
    padding: 12px 8px;
    box-sizing: border-box;
    color: var(--mbn-muted, #6b7c78);
    font-size: 13px;
    line-height: 1.3;
}

.mbn-library__pager-lazy-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.mbn-library__pager-lazy-label::before {
    content: '';
    width: 14px;
    height: 14px;
    border: 2px solid var(--mbn-accent, #41A3AF);
    border-right-color: transparent;
    border-radius: 50%;
    box-sizing: border-box;
    animation: mbn-library-lazy-spin 0.7s linear infinite;
}

@keyframes mbn-library-lazy-spin {
    to {
        transform: rotate(360deg);
    }
}

@media (prefers-reduced-motion: reduce) {
    .mbn-library__pager-lazy-label::before {
        animation: none;
        border-right-color: var(--mbn-accent, #41A3AF);
        opacity: 0.55;
    }
}

.mbn-library__pager-extend {
    padding: 0 4px;
    color: var(--mbn-muted);
    font-size: 14px;
}

/* Заголовок L1: цвет при наведении на всю шапку карточки (__main), не только на .hit */
.mbn-course-card__hit .mbn-course-card__title {
    color: var(--mbn-row1-color, var(--mbn-text));
}

.mbn-course-card__main:hover .mbn-course-card__hit .mbn-course-card__title,
.mbn-course-card__main:focus-within .mbn-course-card__hit .mbn-course-card__title,
.mbn-course-card__main:hover .mbn-course-card__icon,
.mbn-course-card__main:focus-within .mbn-course-card__icon {
    color: var(--mbn-row1-color-hover, var(--mbn-accent-hover, var(--mbn-row1-color)));
}

.mbn-course-card__main:hover .mbn-course-card__title-link,
.mbn-course-card__main:focus-within .mbn-course-card__title-link {
    color: var(--mbn-row1-color-hover, var(--mbn-accent-hover, var(--mbn-row1-color))) !important;
}

/* Папка: при наведении на название — второй шаг (иконка + ссылка), как hover крошки */
.mbn-course-card__hit-head:has(.mbn-course-card__title-link:hover) .mbn-course-card__icon,
.mbn-course-card__hit-head:has(.mbn-course-card__title-link:focus) .mbn-course-card__icon,
.mbn-course-card__hit-head:has(.mbn-course-card__title-link:focus-visible) .mbn-course-card__icon {
    color: var(--mbn-crumb-color-hover, var(--mbn-row1-color-hover, var(--mbn-accent-hover, #1e5a4b)));
}

.mbn-course-card__title-link:hover,
.mbn-course-card__title-link:focus,
.mbn-course-card__main:hover .mbn-course-card__title-link:hover,
.mbn-course-card__main:hover .mbn-course-card__title-link:focus {
    color: var(--mbn-crumb-color-hover, var(--mbn-row1-color-hover, var(--mbn-accent-hover, #1e5a4b))) !important;
}

/* L5 вЂ” РєСЂР°С‚РєРѕРµ РѕРїРёСЃР°РЅРёРµ СѓСЂРѕРІРЅРµР№ РїРѕРґ Р·Р°РіРѕР»РѕРІРєРѕРј */
.mbn-course-card__levels {
    margin: 0 0 8px;
    font-size: var(--mbn-row5-size, 13px);
    line-height: 1.35;
    color: var(--mbn-row5-color, #4a6b62);
}

/* РњРµС‚Р°-СЃС‚СЂРѕРєР° (РёРєРѕРЅРєР° + СЃСЃС‹Р»РєР° РЅР° СѓСЂРѕРє) вЂ” L4 СЂР°Р·РјРµСЂ */
.mbn-course-card__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 8px;
    font-size: var(--mbn-row4-size, 13px);
    color: var(--mbn-muted);
}

.mbn-course-card__meta-line {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 0.35em 0.5em;
    min-width: 0;
    flex: 0 1 auto;
    max-width: 100%;
}

.mbn-course-card__meta-line .mbn-hw {
    flex: 0 0 auto;
}

.mbn-course-card__meta-line .mbn-course-card__meta-lesson-link,
.mbn-course-card__meta-line .mbn-course-card__meta-lesson,
.mbn-course-card__meta-line > :not(.mbn-course-card__meta-icon):not(.mbn-course-card__meta-sep) {
    min-width: 0;
    flex: 1 1 auto;
    overflow-wrap: break-word;
    word-break: normal;
}

.mbn-course-card__meta > .mbn-course-card__badge,
.mbn-course-card__meta > .mbn-course-card__progress,
.mbn-course-card__meta > .mbn-course-card__progress-wrap {
    flex: 0 0 auto;
}

/* Иконка мета-строки в шапке — тот же цвет, что у ссылки урока (L4) */
.mbn-course-card__meta-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    align-self: flex-start;
    box-sizing: border-box;
    width: 1em;
    height: 1.35em;
    margin-top: 0;
    color: var(--mbn-row4-color, var(--mbn-text, #1d3b34));
    font-size: var(--mbn-row1-subtitle-size, var(--mbn-row4-size, 13px));
    line-height: 1.35;
    transition: color 0.15s ease;
}

.mbn-course-card__meta-icon .fa,
.mbn-course-card__meta-icon .fi {
    font-size: 1em;
    line-height: 1;
    color: inherit !important;
}

.mbn-course-card__meta-icon .fi {
    transform: translateY(0.06em);
}

.mbn-course-card__meta-line:has(.mbn-course-card__meta-lesson-link:hover) .mbn-course-card__meta-icon,
.mbn-course-card__meta-line:has(.mbn-course-card__meta-lesson-link:focus) .mbn-course-card__meta-icon,
.mbn-course-card__meta-line:has(.mbn-course-card__meta-lesson-link:focus-visible) .mbn-course-card__meta-icon {
    color: var(--mbn-row4-color-hover, var(--mbn-accent, #256c5a));
}

.mbn-course-card__meta-sep {
    opacity: 0.55;
}

.mbn-course-card__meta-lesson {
    color: var(--mbn-row4-color, var(--mbn-text));
    font-weight: 500;
}

/* РђРєРєРѕСЂРґРµРѕРЅ РіСЂСѓРїРї */
.mbn-library-acc {
    border: 1px solid var(--mbn-block-border, var(--mbn-border));
    border-radius: var(--mbn-radius, 12px);
    background: #fff;
    box-shadow: var(--mbn-block-shadow, none);
    overflow: hidden;
}

/* L1 вЂ” Р·Р°РіРѕР»РѕРІРѕРє Р°РєРєРѕСЂРґРµРѕРЅР° */
.mbn-library-acc__summary {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 6px 12px;
    padding: 8px 16px;
    cursor: pointer;
    list-style: none;
    user-select: none;
    background: var(--mbn-row1-bg, #ffffff);
    transition: background 0.15s ease;
}

.mbn-library-acc__summary:not(.mbn-library-acc__summary--static) {
    padding-right: 16px;
}

.mbn-library-acc__summary::-webkit-details-marker {
    display: none;
}

/* РЎС‚СЂРµР»РєР° Р°РєРєРѕСЂРґРµРѕРЅР° вЂ” chevron-card */
.mbn-library-acc__summary::after {
    content: "";
    flex: 0 0 auto;
    align-self: center;
    order: 99;
    width: 0.7em;
    height: 0.7em;
    margin: 0 0 0 8px;
    border-right: 2.5px solid var(--mbn-chevron-card-color, #7a948c);
    border-bottom: 2.5px solid var(--mbn-chevron-card-color, #7a948c);
    transform: rotate(45deg);
    transition: transform 0.15s ease, border-color 0.15s ease;
    pointer-events: none;
}

.mbn-library-acc__summary:hover::after,
.mbn-library-acc__summary:focus-visible::after {
    border-right-color: var(--mbn-chevron-card-color-hover, var(--mbn-accent, #256c5a));
    border-bottom-color: var(--mbn-chevron-card-color-hover, var(--mbn-accent, #256c5a));
}

.mbn-library-acc--static > .mbn-library-acc__summary,
.mbn-library-acc__summary--static {
    cursor: default;
}

.mbn-library-acc--static > .mbn-library-acc__summary::after,
.mbn-library-acc__summary--static::after {
    display: none;
}

.mbn-library-acc__folder-line {
    display: flex;
    margin-top: 2px;
}

.mbn-library-acc__lesson-line {
    display: flex;
    margin-top: 2px;
}

/* РџРѕРґСЃС‚СЂРѕРєРё РїРѕРґ С‚РµРєСЃС‚РѕРј Р·Р°РіРѕР»РѕРІРєР° РґРѕСЃС‚СѓРїР°, РЅРµ РїРѕРґ РёРєРѕРЅРєРѕР№; РєСЂРѕС€РєРё Р±РµР· РѕС‚СЃС‚СѓРїР° */
.mbn-library-acc__heading > .mbn-library-acc__folder-line {
    padding-left: calc(var(--mbn-row1-size, 16px) + 8px);
    box-sizing: border-box;
}

.mbn-library-acc__heading > .mbn-course-card__module-line {
    padding-left: calc(var(--mbn-row1-size, 16px) + 8px);
    box-sizing: border-box;
}

.mbn-library-acc__heading > .mbn-library-acc__folder-line + .mbn-course-card__module-line {
    padding-left: calc(var(--mbn-row1-size, 16px) + 8px + 1em + 6px);
}

.mbn-library-acc__heading > .mbn-library-acc__folder-line + .mbn-library-acc__lesson-line {
    padding-left: calc(var(--mbn-row1-size, 16px) + 8px + 1em + 6px);
    box-sizing: border-box;
}

.mbn-library-acc__heading > .mbn-course-card__module-line + .mbn-library-acc__lesson-line {
    padding-left: calc(var(--mbn-row1-size, 16px) + 8px + 1em + 6px + 1em + 6px);
}

/* РњРѕРґСѓР»СЊ СѓР¶Рµ РІ __body (= РїРѕРґ С‚РµРєСЃС‚РѕРј Р·Р°РіРѕР»РѕРІРєР°); СѓСЂРѕРє вЂ” РїРѕРґ С‚РµРєСЃС‚РѕРј РјРѕРґСѓР»СЏ */
.mbn-course-card__body > .mbn-course-card__module-line {
    padding-left: 0;
}

.mbn-course-card__body > .mbn-course-card__module-line + .mbn-course-card__meta {
    padding-left: calc(1em + 6px);
    box-sizing: border-box;
}

.mbn-library-level-card > .mbn-course-card__main > .mbn-course-card__hit > .mbn-library-acc__folder-line {
    width: 100%;
    padding-left: calc(var(--mbn-row1-size, 16px) + 12px);
    box-sizing: border-box;
}

/* РљРѕРјРїР°РєС‚РЅР°СЏ С†РµР»СЊ CTA РІ С€Р°РїРєРµ РґРѕСЃС‚СѓРїР° СЃ 1 РїР°РїРєРѕР№ вЂ” РїСЂСЏС‡РµС‚СЃСЏ РїСЂРё СЂР°СЃРєСЂС‹С‚РёРё (РїРµСЂРµС…РѕРґРёС‚ РІРѕ РІР»РѕР¶РµРЅРЅСѓСЋ РєР°СЂС‚РѕС‡РєСѓ) */
.mbn-library-level-card--single > .mbn-course-card__main[aria-expanded="true"] [data-mbn-level-compact],
.mbn-library-level-card--single > .mbn-course-card__main[aria-expanded="true"] [data-mbn-level-compact-cta],
.mbn-library-level-card--single > .mbn-course-card__main[aria-expanded="true"] [data-mbn-level-compact-toggle] {
    display: none !important;
}

.mbn-library-level-card__compact {
    margin-top: 2px;
    color: var(--mbn-row4-color, var(--mbn-text, #1d3b34));
}

.mbn-course-card__module-line.mbn-library-acc__subtitle {
    color: var(--mbn-row4-color, var(--mbn-muted, #6b857c));
}

/* L1 Р·Р°РіРѕР»РѕРІРѕРє РєР°СЂС‚РѕС‡РєРё-СѓСЂРѕРІРЅСЏ */
.mbn-library-level-card > .mbn-course-card__main {
    padding: 8px 16px;
    min-height: 0;
}

.mbn-library-level-card .mbn-course-card__title {
    font-size: var(--mbn-row1-size, 16px);
    font-weight: var(--mbn-row1-weight, 700);
    color: var(--mbn-row1-color, var(--mbn-text));
}

.mbn-library-level-card .mbn-course-card__icon {
    font-size: var(--mbn-row1-size, 16px);
    color: var(--mbn-row1-color, var(--mbn-text, #1d3b34));
    height: calc(var(--mbn-row1-size, 16px) * 1.3);
}

/* L2 РІРЅСѓС‚СЂРё level-card вЂ” РєРѕРјРїР°РєС‚РЅРµРµ, РєР°Рє РІР»РѕР¶РµРЅРЅС‹Рµ РїР°РїРєРё */
.mbn-library-level-card > .mbn-course-card__materials-list > .mbn-course-card > .mbn-course-card__main {
    padding: 8px 16px;
}

.mbn-library-acc__heading > .mbn-course-card__folder-path {
    margin: 0;
    padding-left: 0;
}

/* L2 РІРЅСѓС‚СЂРё level-card */
.mbn-library-level-card > .mbn-course-card__materials-list > .mbn-course-card {
    border: 0;
    border-radius: 0;
    box-shadow: none;
    border-bottom: var(--mbn-row2-border-bottom-width, 1px) solid var(--mbn-row2-border-bottom-color, #e3ebe7);
    background: var(--mbn-row2-bg, #fff);
}

.mbn-library-level-card > .mbn-course-card__materials-list > .mbn-course-card:last-child {
    border-bottom: 0;
}

.mbn-library-level-card > .mbn-course-card__materials-list > .mbn-course-card:hover {
    box-shadow: none;
    background: transparent;
}

.mbn-library-level-card > .mbn-course-card__materials-list > .mbn-course-card > .mbn-course-card__main:hover {
    background: var(--mbn-row2-bg-hover, var(--mbn-accent-soft, #eef6f3));
}

.mbn-library-acc[open] > .mbn-library-acc__summary::after {
    transform: rotate(-135deg);
}

.mbn-library-acc__summary:hover {
    background: var(--mbn-row1-bg-hover, var(--mbn-accent-soft, #eef6f3));
}

.mbn-library-acc__heading {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    min-width: 0;
    flex: 1 1 14rem;
}

.mbn-library-acc__title-wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

/* L1 Р·Р°РіРѕР»РѕРІРѕРє Р°РєРєРѕСЂРґРµРѕРЅР° */
.mbn-library-acc__title {
    font-size: var(--mbn-row1-size, 16px);
    font-weight: var(--mbn-row1-weight, 700);
    color: var(--mbn-row1-color, var(--mbn-text));
    line-height: 1.3;
}

.mbn-library-acc__subtitle {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: 6px;
    font-size: var(--mbn-row1-subtitle-size, 13px);
    font-weight: 500;
    color: var(--mbn-muted, #6b857c);
    line-height: 1.3;
    max-width: 100%;
    min-width: 0;
}

.mbn-library-acc__subtitle-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    box-sizing: border-box;
    width: 1em;
    height: 1.3em;
    margin-top: 0;
    color: inherit;
    font-size: 1em;
    line-height: 1.3;
    transition: color 0.15s ease;
}

.mbn-library-acc__subtitle-icon .fa,
.mbn-library-acc__subtitle-icon .fi {
    font-size: 0.95em;
    line-height: 1;
    color: inherit !important;
}

.mbn-library-acc__subtitle-icon .fi {
    transform: translateY(0.06em);
}

/* Подзаголовок / 2-я строка: иконка = цвет текста; вместе при наведении на эту строку */
.mbn-library-acc__subtitle {
    transition: color 0.15s ease;
}

.mbn-library-acc__subtitle .mbn-material-module__crumb,
.mbn-library-acc__subtitle .mbn-material-module__sep,
.mbn-course-card__module-line .mbn-material-module__crumb,
.mbn-course-card__module-line .mbn-material-module__sep {
    color: inherit !important;
}

.mbn-library-acc__subtitle:hover,
.mbn-library-acc__subtitle:focus-within,
.mbn-library-level-card__compact:hover,
.mbn-library-level-card__compact:focus-within,
.mbn-course-card__module-line:hover,
.mbn-course-card__module-line:focus-within {
    color: var(--mbn-row4-color-hover, var(--mbn-accent, #256c5a));
}

.mbn-library-acc__subtitle a.mbn-material-module__crumb:hover,
.mbn-library-acc__subtitle a.mbn-material-module__crumb:focus,
.mbn-course-card__module-line a.mbn-material-module__crumb:hover,
.mbn-course-card__module-line a.mbn-material-module__crumb:focus {
    color: var(--mbn-crumb-color-hover, var(--mbn-row4-color-hover, var(--mbn-accent, #256c5a))) !important;
}

.mbn-library-acc__subtitle:hover .mbn-library-acc__subtitle-icon,
.mbn-library-acc__subtitle:focus-within .mbn-library-acc__subtitle-icon,
.mbn-library-level-card__compact:hover .mbn-library-acc__subtitle-icon,
.mbn-library-level-card__compact:focus-within .mbn-library-acc__subtitle-icon,
.mbn-course-card__module-line:hover .mbn-library-acc__subtitle-icon,
.mbn-course-card__module-line:focus-within .mbn-library-acc__subtitle-icon {
    color: inherit;
}

/* РўРѕР»СЊРєРѕ С‚РµРєСЃС‚ вЂ” СЃСЃС‹Р»РєР° (РЅРµ СЂР°СЃС‚СЏРіРёРІР°С‚СЊ РЅР° РІСЃСЋ СЃС‚СЂРѕРєСѓ) */
.mbn-library-acc__subtitle-text {
    min-width: 0;
    flex: 0 1 auto;
    max-width: 100%;
    overflow-wrap: break-word;
    word-break: normal;
}

.mbn-library-acc__count {
    margin-left: auto;
    font-size: 13px;
    color: var(--mbn-muted);
}

.mbn-library-acc__cta {
    position: relative;
    z-index: 1;
    pointer-events: auto;
}

.mbn-library-acc__body {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0;
    border-top: var(--mbn-row1-border-bottom-width, 1px) solid var(--mbn-row1-border-bottom-color, #e3ebe7);
}

/* L2 вЂ” РІР»РѕР¶РµРЅРЅС‹Рµ РєР°СЂС‚РѕС‡РєРё РїР°РїРѕРє РІРЅСѓС‚СЂРё Р°РєРєРѕСЂРґРµРѕРЅР° */
.mbn-library-acc__body .mbn-course-card,
.mbn-library-group__list .mbn-course-card {
    border: 0;
    border-radius: 0;
    border-bottom: var(--mbn-row2-border-bottom-width, 1px) solid var(--mbn-row2-border-bottom-color, #e3ebe7);
    box-shadow: none;
    padding: 0;
    background: var(--mbn-row2-bg, #fff);
}

.mbn-library-acc__body .mbn-course-card__main,
.mbn-library-group__list .mbn-course-card__main {
    padding: 8px 16px;
    border-left: var(--mbn-row2-border-left-width, 0px) solid var(--mbn-row2-border-left-color, transparent);
}

.mbn-library-acc__body .mbn-course-card:last-child,
.mbn-library-group__list .mbn-course-card:last-child {
    border-bottom: 0;
}

.mbn-library-acc__body .mbn-course-card:hover,
.mbn-library-group__list .mbn-course-card:hover {
    box-shadow: none;
    background: transparent;
    border-color: var(--mbn-row2-border-bottom-color, #e3ebe7);
}

.mbn-library-acc__body .mbn-course-card__main:hover,
.mbn-library-group__list .mbn-course-card__main:hover {
    background: var(--mbn-row2-bg-hover, var(--mbn-accent-soft, #eef6f3));
}

/* L2 иконка */
.mbn-library-acc__body .mbn-course-card__icon,
.mbn-library-group__list .mbn-course-card__icon {
    font-size: var(--mbn-row2-size, 16px);
    height: calc(var(--mbn-row2-size, 16px) * 1.3);
    margin: 0;
    color: var(--mbn-row2-color, var(--mbn-text, #1d3b34));
}

/* L2 заголовок */
.mbn-library-acc__body .mbn-course-card__title,
.mbn-library-group__list .mbn-course-card__title {
    font-size: var(--mbn-row2-size, 16px);
    line-height: 1.3;
    font-weight: var(--mbn-row2-weight, 700);
    color: var(--mbn-row2-color, var(--mbn-text, #1d3b34));
}

.mbn-library-acc__body .mbn-course-card__hit .mbn-course-card__title,
.mbn-library-group__list .mbn-course-card__hit .mbn-course-card__title {
    color: var(--mbn-row2-color, var(--mbn-text, #1d3b34));
}

.mbn-library-acc__body .mbn-course-card__title-link,
.mbn-library-group__list .mbn-course-card__title-link {
    color: var(--mbn-row2-color, var(--mbn-text, #1d3b34)) !important;
}

/* L2: наведение на всю строку — фон + текст + иконка */
.mbn-library-acc__body .mbn-course-card__main:hover .mbn-course-card__hit .mbn-course-card__title,
.mbn-library-acc__body .mbn-course-card__main:hover .mbn-course-card__icon,
.mbn-library-group__list .mbn-course-card__main:hover .mbn-course-card__hit .mbn-course-card__title,
.mbn-library-group__list .mbn-course-card__main:hover .mbn-course-card__icon,
.mbn-library-level-card > .mbn-course-card__materials-list > .mbn-course-card > .mbn-course-card__main:hover .mbn-course-card__hit .mbn-course-card__title,
.mbn-library-level-card > .mbn-course-card__materials-list > .mbn-course-card > .mbn-course-card__main:hover .mbn-course-card__icon {
    color: var(--mbn-row2-color-hover, var(--mbn-accent-hover, #1e5a4b));
}

.mbn-library-acc__body .mbn-course-card__main:hover .mbn-course-card__title-link,
.mbn-library-group__list .mbn-course-card__main:hover .mbn-course-card__title-link,
.mbn-library-level-card > .mbn-course-card__materials-list > .mbn-course-card > .mbn-course-card__main:hover .mbn-course-card__title-link {
    color: var(--mbn-row2-color-hover, var(--mbn-accent-hover, #1e5a4b)) !important;
}

/* L2 папка: наведение на название — второй шаг для иконки + ссылки */
.mbn-library-acc__body .mbn-course-card__hit-head:has(.mbn-course-card__title-link:hover) .mbn-course-card__icon,
.mbn-library-acc__body .mbn-course-card__hit-head:has(.mbn-course-card__title-link:focus) .mbn-course-card__icon,
.mbn-library-group__list .mbn-course-card__hit-head:has(.mbn-course-card__title-link:hover) .mbn-course-card__icon,
.mbn-library-group__list .mbn-course-card__hit-head:has(.mbn-course-card__title-link:focus) .mbn-course-card__icon,
.mbn-library-level-card > .mbn-course-card__materials-list > .mbn-course-card > .mbn-course-card__main .mbn-course-card__hit-head:has(.mbn-course-card__title-link:hover) .mbn-course-card__icon,
.mbn-library-level-card > .mbn-course-card__materials-list > .mbn-course-card > .mbn-course-card__main .mbn-course-card__hit-head:has(.mbn-course-card__title-link:focus) .mbn-course-card__icon {
    color: var(--mbn-crumb-color-hover, var(--mbn-row2-color-hover, var(--mbn-accent-hover, #1e5a4b)));
}

.mbn-library-acc__body .mbn-course-card__title-link:hover,
.mbn-library-acc__body .mbn-course-card__title-link:focus,
.mbn-library-acc__body .mbn-course-card__main:hover .mbn-course-card__title-link:hover,
.mbn-library-acc__body .mbn-course-card__main:hover .mbn-course-card__title-link:focus,
.mbn-library-group__list .mbn-course-card__title-link:hover,
.mbn-library-group__list .mbn-course-card__title-link:focus,
.mbn-library-group__list .mbn-course-card__main:hover .mbn-course-card__title-link:hover,
.mbn-library-group__list .mbn-course-card__main:hover .mbn-course-card__title-link:focus,
.mbn-library-level-card > .mbn-course-card__materials-list .mbn-course-card__title-link:hover,
.mbn-library-level-card > .mbn-course-card__materials-list .mbn-course-card__title-link:focus,
.mbn-library-level-card > .mbn-course-card__materials-list .mbn-course-card__main:hover .mbn-course-card__title-link:hover,
.mbn-library-level-card > .mbn-course-card__materials-list .mbn-course-card__main:hover .mbn-course-card__title-link:focus {
    color: var(--mbn-crumb-color-hover, var(--mbn-row2-color-hover, var(--mbn-accent-hover, #1e5a4b))) !important;
}

.mbn-library-group {
    display: flex;
    flex-direction: column;
    gap: 0;
    border: 1px solid var(--mbn-block-border, var(--mbn-border));
    border-radius: var(--mbn-radius, 12px);
    background: #fff;
    box-shadow: var(--mbn-block-shadow, none);
    overflow: hidden;
}

/* L1 Р·Р°РіРѕР»РѕРІРѕРє РіСЂСѓРїРїС‹ */
.mbn-library-group__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 14px 16px;
    background: var(--mbn-row1-bg, #ffffff);
    border-bottom: var(--mbn-row1-border-bottom-width, 1px) solid var(--mbn-row1-border-bottom-color, #e3ebe7);
}

.mbn-library-group__title {
    margin: 0;
    font-size: var(--mbn-row1-size, 16px);
    line-height: 1.3;
    font-weight: var(--mbn-row1-weight, 700);
    color: var(--mbn-row1-color, var(--mbn-text));
}

.mbn-library-group__count {
    font-size: 13px;
    color: var(--mbn-muted);
}

.mbn-library-group__list {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.mbn-library__empty {
    padding: 24px;
    text-align: center;
    color: var(--mbn-muted);
    background: #f7faf8;
    border-radius: 12px;
}

@media (max-width: 840px) {
    /* РќР°Р·РІР°РЅРёРµ РЅР° РІСЃСЋ С€РёСЂРёРЅСѓ вЂ” РєРЅРѕРїРєРё РЅРёР¶Рµ СЃРїСЂР°РІР°, РєР°Рє РЅР° РґРµСЃРєС‚РѕРїРµ */
    .mbn-course-card__main,
    .mbn-library-acc__summary {
        align-items: flex-start;
    }

    .mbn-course-card__main.is-expandable,
    .mbn-library-acc__summary:not(.mbn-library-acc__summary--static) {
        /* РџРѕР»СЏ РєР°СЂС‚РѕС‡РєРё СЃРёРјРјРµС‚СЂРёС‡РЅС‹; РјРµСЃС‚Рѕ РїРѕРґ СЃС‚СЂРµР»РєСѓ вЂ” С‚РѕР»СЊРєРѕ Сѓ С‚РµРєСЃС‚Р° */
        padding-right: 16px;
    }

    .mbn-course-card__hit,
    .mbn-library-acc__heading {
        flex: 1 1 100%;
        min-width: 0;
        max-width: 100%;
        padding-right: 20px;
        box-sizing: border-box;
        overflow-wrap: break-word;
        word-break: normal;
        hyphens: auto;
    }

    .mbn-course-card__actions,
    .mbn-library-acc__aside {
        flex: 1 1 100%;
        margin-left: 0;
        justify-content: flex-end;
    }

    /* РќР° СѓР·РєРѕРј СЌРєСЂР°РЅРµ СЃС‚СЂРµР»РєР° absolute вЂ” Сѓ РїСЂР°РІРѕРіРѕ РєСЂР°СЏ С€Р°РїРєРё, РЅРµ СЂР°Р·РґСѓРІР°РµС‚ padding РєРЅРѕРїРєРё */
    .mbn-course-card__main.is-expandable::after,
    .mbn-library-acc__summary::after {
        position: absolute;
        top: 1.2rem;
        right: 12px;
        margin: 0;
        align-self: auto;
        order: 0;
        transform: rotate(45deg);
    }

    .mbn-course-card__main.is-expandable[aria-expanded="true"]::after,
    .mbn-library-acc[open] > .mbn-library-acc__summary::after {
        top: calc(1.2rem + 3px);
        margin-top: 0;
        transform: rotate(-135deg);
    }
}

@media (max-width: 640px) {
    .mbn-library__search-field {
        width: 100%;
    }

    .mbn-library__toolbar-left {
        flex: 0 1 auto;
        justify-content: flex-start;
        gap: 10px;
        min-width: 0;
    }

    .mbn-library--toolbar-labels-auto .mbn-library__refresh {
        padding: 0;
        width: var(--mbn-refresh-size, 44px);
    }

    .mbn-library--toolbar-labels-auto .mbn-library__refresh-label,
    .mbn-library--accordion-labels-auto .mbn-library__acc-btn-label {
        display: none;
    }


    .mbn-library__freshness {
        font-size: 11px;
    }

    /* РќР° С‚РµР»РµС„РѕРЅРµ С‚СѓРјР±Р»РµСЂ РїРѕС‡С‚Рё РІСЃРµРіРґР° РѕРґРёРЅ РІ СЂСЏРґСѓ вЂ” РЅР° РІСЃСЋ С€РёСЂРёРЅСѓ. */
    .mbn-library__view-tumbler,
    .mbn-library__toolbar-left + .mbn-library__view-tumbler {
        flex: 1 1 100%;
        width: 100%;
        margin-left: 0 !important;
    }

    .mbn-library__view-option {
        flex: 1;
    }

    .mbn-course-card {
        flex-direction: column;
        align-items: stretch;
    }

    .mbn-course-card__main.is-expandable::after,
    .mbn-library-acc__summary::after {
        right: 10px;
        width: 0.75em;
        height: 0.75em;
        margin: 0;
        border-right-width: 2.5px;
        border-bottom-width: 2.5px;
    }

    .mbn-course-card__actions,
    .mbn-library-acc__aside {
        flex: 1 1 100%;
        margin-left: 0;
        justify-content: stretch;
    }

    .mbn-course-card__actions .mbn-course-card__count-toggle,
    .mbn-library-acc__aside .mbn-course-card__count-toggle {
        flex: 1 0 auto;
        justify-content: center;
    }

    .mbn-course-card__actions .mbn-course-card__btn,
    .mbn-library-acc__aside .mbn-course-card__btn {
        flex: 1 0 auto;
        width: 100%;
        max-width: 100%;
        justify-content: center;
    }

    .mbn-material-row__main,
    .mbn-level-row__main,
    .mbn-course-card__meta-line {
        flex: 1 1 100%;
    }

    .mbn-material-row__aside,
    .mbn-level-row__meta {
        margin-left: 0;
        flex: 0 1 auto;
        padding-left: calc(1em + 8px);
    }

    .mbn-material-module__main {
        flex: 1 1 100%;
    }

    .mbn-material-module__meta {
        margin-left: 0;
        flex: 1 1 100%;
        box-sizing: border-box;
        justify-content: flex-end;
        padding-left: calc(1em + 8px);
    }

    .mbn-material-module__meta > .mbn-course-card__progress-wrap,
    .mbn-material-module__meta > [data-mbn-preview-progress-subfolder] {
        margin-right: auto;
    }
}

/* Страница активации — скрытие лишнего */
.mbn-activation-page--no-cover .site-content > .brand-row,
.mbn-activation-page--no-cover .site-content > a.brand-row {
    display: none !important;
}
.mbn-activation-page--no-history .keys-table {
    display: none !important;
}
.mbn-activation-page--no-keys .keys-table .key-row .col-key .key {
    display: none !important;
}
.mbn-activation-page--no-folders .row-key-categories.active,
.mbn-activation-page--no-folders .row-key-categories {
    display: none !important;
}
.mbn-activation-page--no-folders .col-list .key-content .iconmoon {
    display: none !important;
}
.mbn-activation-page--no-folders .col-list .toggle-key-cats {
    border: 0 !important;
    pointer-events: none !important;
}
/* Мобильный ряд «стрелка + Показать детали» — тоже часть раскрытия папок. */
.mbn-activation-page--no-folders .keys-table .key-row .col-more-info {
    display: none !important;
}
.mbn-activation-page--no-numbers .col-list {
    display: none !important;
}

/*
 * Ширина формы и таблицы = shell библиотеки (--mbn-shell-max),
 * а не .container MEMBERLUX (на ≤767px max-width: 370px + фиксированные width на брейкпоинтах).
 */
.mbn-activation-page .main-content-row > .container {
    width: 100%;
    max-width: min(var(--mbn-shell-max, 1340px), 100%);
    margin-left: auto;
    margin-right: auto;
    padding-left: 16px;
    padding-right: 16px;
    box-sizing: border-box;
}
@media (max-width: 767px) {
    .mbn-activation-page .main-content-row > .container {
        padding-left: 12px;
        padding-right: 12px;
    }
}

/*
 * Отступы как у библиотеки под переключателем:
 * .mbn-library-page--has-title .mbn-library { margin-top: 30px }.
 * MEMBERLUX даёт .page-content-wrap { padding: 40px 0 50px } и
 * .activation-form-wrap { padding-bottom: 50px } — убираем лишнее.
 */
.mbn-activation-page .main-content-row .page-content-wrap {
    padding-top: 30px;
}
.mbn-activation-page .activation-form-wrap {
    padding-bottom: 0;
    margin-bottom: var(--mbn-act-input-gap, 16px);
}

/* Оформление активации (CSS vars на body) */
.mbn-activation-page .form-icon:before {
    color: var(--mbn-act-icon, #9C9CA7);
}
.mbn-activation-page .form-control::placeholder {
    color: var(--mbn-act-placeholder, #9C9CA7);
}
.mbn-activation-page .form-control {
    color: var(--mbn-act-input-text, #080722);
}
.mbn-activation-page .activation-form,
.mbn-activation-page .pincode-form {
    margin-bottom: 0;
}
.mbn-activation-page .activation-form .form-group,
.mbn-activation-page .pincode-form .form-group {
    margin-bottom: 0;
}
.mbn-activation-page .activation-form .form-group input[type=text],
.mbn-activation-page .pincode-form .form-group input[type=text] {
    border: 1px solid var(--mbn-act-input-border, #CADDDC);
    background: var(--mbn-act-input-bg, #fff);
    border-radius: var(--mbn-act-input-radius, 5px);
    color: var(--mbn-act-input-text, #080722);
    font-size: var(--mbn-act-input-size, 16px);
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.mbn-activation-page .activation-form .form-group input[type=text]:hover,
.mbn-activation-page .pincode-form .form-group input[type=text]:hover {
    border-color: var(--mbn-act-input-border-hover, #9fbbb2);
}
.mbn-activation-page .activation-form .form-group input[type=text]:focus,
.mbn-activation-page .activation-form .form-group input[type=text]:focus-visible,
.mbn-activation-page .pincode-form .form-group input[type=text]:focus,
.mbn-activation-page .pincode-form .form-group input[type=text]:focus-visible {
    border-color: var(--mbn-act-input-border-focus, #256C5A);
    outline: none !important;
    box-shadow: 0 0 0 3px var(--mbn-act-input-focus-ring, rgba(37, 108, 90, 0.18)) !important;
}
.mbn-activation-page .activation-form .mbr-btn.btn-solid.btn-green {
    border: none;
    border-radius: var(--mbn-act-btn-radius, 5px);
    background-color: var(--mbn-act-btn-bg, #256c5a);
    background-image: var(--mbn-act-btn-bg-image, none);
    color: var(--mbn-act-btn-color, #fff) !important;
    text-transform: var(--mbn-act-btn-transform, uppercase);
    transition: background 0.15s ease, color 0.15s ease;
}
.mbn-activation-page .activation-form .mbr-btn.btn-solid.btn-green:hover {
    background-color: var(--mbn-act-btn-hover, #1e5a4b);
    background-image: var(--mbn-act-btn-hover-image, none);
    color: var(--mbn-act-btn-color-hover, #fff) !important;
}
.mbn-activation-page .activation-form .mbr-btn.btn-solid.btn-green:active,
.mbn-activation-page .activation-form .mbr-btn.btn-solid.btn-green:focus {
    background-color: var(--mbn-act-btn-active, #16463a);
    background-image: var(--mbn-act-btn-active-image, none);
    color: var(--mbn-act-btn-color-active, #fff) !important;
    outline: none;
    box-shadow: none;
}
.mbn-activation-page .keys-table {
    border: var(--mbn-act-table-border-width, 1px) solid var(--mbn-act-table-border, #CADDDC);
    border-radius: var(--mbn-act-table-radius, 0);
    overflow: hidden;
}
.mbn-activation-page .keys-table .key-row.keys-header {
    background: var(--mbn-act-header-bg, #E4EEED);
    color: var(--mbn-act-header-color, #256C5A);
    font-weight: var(--mbn-act-header-weight, 600);
    text-transform: var(--mbn-act-header-transform, none);
}
.mbn-activation-page .keys-table .key-row.keys-header .iconmoon {
    color: var(--mbn-act-header-color, #256C5A);
}
.mbn-activation-page .keys-table .key-row.keys-header > div {
    border-right: 1px solid var(--mbn-act-header-divider, #CADDDC);
}
/* Мобильная колонка иконок = роль шапки (шапка скрыта через hidden-xs). */
.mbn-activation-page .keys-table .key-row .col-item .key-icon {
    background: var(--mbn-act-header-bg, #E4EEED);
    border-bottom-color: var(--mbn-act-header-divider, #CADDDC);
}
.mbn-activation-page .keys-table .key-row .col-item .key-icon .iconmoon,
.mbn-activation-page .keys-table .key-row .col-item .key-icon .toggle-key-cats .iconmoon {
    color: var(--mbn-act-header-color, #256C5A) !important;
}
.mbn-activation-page .keys-table .key-row.odd {
    background: var(--mbn-act-row-odd, #fff);
}
.mbn-activation-page .keys-table .key-row.even {
    background: var(--mbn-act-row-even, #F2F6F6);
}
.mbn-activation-page .keys-table .row-key-categories.odd {
    background: var(--mbn-act-row-odd, #fff);
}
.mbn-activation-page .keys-table .row-key-categories.even {
    background: var(--mbn-act-row-even, #F2F6F6);
}
.mbn-activation-page .keys-table .key-row .col-list .num {
    color: var(--mbn-act-num-color, #256C5A);
    font-weight: var(--mbn-act-num-weight, 700);
}
.mbn-activation-page .keys-table .toggle-key-cats {
    border: 0 solid transparent;
    border-radius: var(--mbn-act-toggle-radius, 3px);
    background: transparent;
}
.mbn-activation-page .keys-table .col-list .toggle-key-cats .iconmoon {
    color: var(--mbn-act-toggle-icon, #c1c1c1) !important;
}
/* Hover фона — только у «номер + стрелка», не у «Показать детали». */
.mbn-activation-page .keys-table .col-list .toggle-key-cats:hover,
.mbn-activation-page .keys-table .col-list .toggle-key-cats.active {
    border: 0 solid transparent;
    border-radius: var(--mbn-act-toggle-radius, 3px);
    background: var(--mbn-act-toggle-bg, #E4EEED);
}
.mbn-activation-page .keys-table .key-row .col-key .course {
    color: var(--mbn-act-course-color, #080722);
    font-weight: var(--mbn-act-course-weight, 400);
}
.mbn-activation-page .keys-table .key-row .col-more-info .more-info {
    color: var(--mbn-act-course-color, #080722);
}
.mbn-activation-page .keys-table .key-row .col-key .key {
    color: var(--mbn-act-key-color, #8a8a8a);
}
.mbn-activation-page .keys-table .key-row .col-start .date,
.mbn-activation-page .keys-table .key-row .col-end .date.ok {
    color: var(--mbn-act-date-color, #080722);
    font-weight: var(--mbn-act-date-weight, 400);
}
.mbn-activation-page .keys-table .key-row .col-end .note.red {
    position: relative;
    padding-left: 20px;
    color: var(--mbn-act-note-red, #BF003D);
}
.mbn-activation-page .keys-table .key-row .col-end .note.red .iconmoon {
    position: absolute;
    left: 0;
    top: 3px;
    color: var(--mbn-act-note-red, #BF003D);
}

/*
 * Планшеты 768–1199: у MEMBERLUX col-end = 140px → обрезается «осталось».
 * Ширина как на ≥1200 (240px), без flex-grow — иначе колонка съедает место у ключа.
 */
@media (min-width: 768px) and (max-width: 1199px) {
    .mbn-activation-page .keys-table .key-row .col-end {
        width: 240px;
        min-width: 240px;
        max-width: 240px;
        flex: 0 0 240px;
    }
    .mbn-activation-page .keys-table .key-row .col-key {
        flex: 1 1 auto;
        min-width: 0;
    }
    .mbn-activation-page .keys-table .key-row .col-end .note,
    .mbn-activation-page .keys-table .key-row .col-end .mbu-countdown {
        white-space: normal;
    }
}

/* Мобильная карточка: зоны клика, старт, выравнивание «осталось». */
@media (max-width: 767px) {
    /* Показать дату старта (MEMBERLUX скрывает .col-start). */
    .mbn-activation-page .keys-table .key-row .col-start {
        display: flex !important;
        width: 100%;
    }
    .mbn-activation-page .keys-table .key-row .col-start .date::before {
        content: var(--mbn-act-label-start, "Старт: ");
        font-weight: 600;
    }
    .mbn-activation-page .keys-table .key-row .col-end .date::before {
        content: var(--mbn-act-label-end, "Конец: ");
        font-weight: 600;
    }
    .mbn-activation-page .keys-table .key-row .col-end .key-content {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        gap: 4px 12px;
    }
    .mbn-activation-page .keys-table .key-row .col-end .date {
        display: block;
    }
    .mbn-activation-page .keys-table .key-row .col-end .note {
        display: block;
        margin-left: 0;
    }
    .mbn-activation-page .keys-table .key-row .col-end .mbu-countdown {
        white-space: normal;
    }

    /* Стрелка: клик и hover на всю ячейку .key-icon. */
    .mbn-activation-page .keys-table .key-row .col-more-info .key-icon {
        display: flex;
        align-items: stretch;
        padding: 0;
        box-sizing: border-box;
    }
    .mbn-activation-page .keys-table .key-row .col-more-info .key-icon .toggle-key-cats {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: 42px;
        margin: 0;
        padding: 10px 0;
        border-radius: 0;
        box-sizing: border-box;
    }
    .mbn-activation-page .keys-table .key-row .col-more-info .key-icon .toggle-key-cats:hover,
    .mbn-activation-page .keys-table .key-row .col-more-info .key-icon .toggle-key-cats.active {
        background: var(--mbn-act-toggle-bg, #E4EEED);
    }

    /* «Показать детали»: клик и hover на весь блок .key-content. */
    .mbn-activation-page .keys-table .key-row .col-more-info .key-content {
        padding: 0;
    }
    .mbn-activation-page .keys-table .key-row .col-more-info .more-info.toggle-key-cats {
        display: flex;
        align-items: center;
        width: 100%;
        min-height: 42px;
        margin: 0;
        padding: 10px;
        box-sizing: border-box;
        border-radius: 0;
        text-decoration: underline;
        background: transparent;
    }
    .mbn-activation-page .keys-table .key-row .col-more-info .more-info.toggle-key-cats:hover,
    .mbn-activation-page .keys-table .key-row .col-more-info .more-info.toggle-key-cats.active {
        background: var(--mbn-act-toggle-bg, #E4EEED);
    }
}

/* Подсказка о библиотеке (intro → bubble) */
.mbn-tip {
    position: fixed;
    z-index: 100050;
    pointer-events: none;
    transition: top 0.65s cubic-bezier(0.4, 0, 0.2, 1), left 0.65s cubic-bezier(0.4, 0, 0.2, 1),
        transform 0.65s cubic-bezier(0.4, 0, 0.2, 1), width 0.55s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.35s ease;
}
.mbn-tip--hidden {
    opacity: 0 !important;
    pointer-events: none !important;
    visibility: hidden;
}
.mbn-tip__backdrop {
    display: none;
}
.mbn-tip--phase-intro .mbn-tip__backdrop {
    display: block;
    position: fixed;
    inset: 0;
    background: rgba(15, 35, 30, 0.35);
    pointer-events: auto;
}
.mbn-tip__panel {
    position: relative;
    pointer-events: auto;
}
.mbn-tip--phase-intro {
    inset: 0;
}
.mbn-tip--phase-intro .mbn-tip__panel {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: min(92vw, var(--mbn-tip-max-width, 420px));
}
.mbn-tip__inner {
    position: relative;
    background: var(--mbn-tip-bg, #ffffff);
    color: var(--mbn-tip-text, #1d3b34);
    border-radius: var(--mbn-tip-radius, 20px);
    box-shadow: var(--mbn-tip-shadow, 0 10px 20px rgba(29, 59, 52, 0.15));
    overflow: visible;
}
.mbn-tip--phase-intro .mbn-tip__inner {
    padding: var(--mbn-tip-pad-y, 24px) var(--mbn-tip-pad-x, 24px);
    text-align: var(--mbn-tip-align, center);
}
.mbn-tip__title {
    margin: 0 0 10px;
    font-size: var(--mbn-tip-title-size, 18px);
    font-weight: var(--mbn-tip-title-weight, 700);
    line-height: 1.35;
    /* Без переноса внутри слова с дефисом (на мобильных выглядело как «кур- сов»). */
    hyphens: none;
    -webkit-hyphens: none;
    -ms-hyphens: none;
    overflow-wrap: normal;
    word-break: normal;
}
.mbn-tip__text {
    margin: 0 0 16px;
    font-size: var(--mbn-tip-text-size, 15px);
    font-weight: var(--mbn-tip-text-weight, 400);
    line-height: 1.45;
    white-space: pre-line;
}
.mbn-tip__bubble-text {
    display: none;
}
.mbn-tip__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: var(--mbn-tip-justify, center);
    margin-bottom: 12px;
}
.mbn-tip__btn,
.mbn-tip__ok {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: var(--mbn-tip-btn-min-height, 44px);
    padding: var(--mbn-tip-btn-pad-y, 10px) var(--mbn-tip-btn-pad-x, 22px);
    border: 0;
    border-radius: var(--mbn-tip-btn-radius, 100px);
    cursor: pointer;
    font-size: var(--mbn-tip-btn-size, 16px);
    font-weight: var(--mbn-tip-btn-weight, 700);
    text-decoration: none !important;
    box-sizing: border-box;
    text-transform: var(--mbn-tip-btn-transform, none);
}
.mbn-tip__btn {
    background-color: var(--mbn-tip-btn-bg, #256c5a);
    background-image: var(
        --mbn-tip-btn-bg-image,
        linear-gradient(90deg, var(--mbn-tip-btn-bg, #256c5a) 0%, var(--mbn-tip-btn-bg2, #1e5a4b) 100%)
    );
    color: #fff !important;
    transition: background 0.2s ease, filter 0.2s ease;
}
.mbn-tip__btn:hover,
.mbn-tip__btn:focus-visible {
    background-color: var(--mbn-tip-btn-hover, #1e5a4b);
    background-image: var(
        --mbn-tip-btn-hover-image,
        linear-gradient(90deg, var(--mbn-tip-btn-hover, #1e5a4b) 0%, var(--mbn-tip-btn-hover2, #16463a) 100%)
    );
    color: #fff !important;
}
.mbn-tip__ok {
    background: var(--mbn-tip-ok-bg, #eef6f3);
    color: var(--mbn-tip-ok-text, #256c5a) !important;
    border: 1px solid var(--mbn-tip-ok-border, #b7d0c7);
    transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.mbn-tip__ok:hover,
.mbn-tip__ok:focus-visible {
    background: var(--mbn-tip-ok-bg-hover, #e0efe9);
    color: var(--mbn-tip-ok-text-hover, #1e5a4b) !important;
    border-color: var(--mbn-tip-ok-border-hover, #256c5a);
}
.mbn-tip__forever {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    cursor: pointer;
    user-select: none;
    justify-content: var(--mbn-tip-justify, center);
    width: 100%;
    position: relative;
}
.mbn-tip__forever-check {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
    appearance: none !important;
    -webkit-appearance: none !important;
    opacity: 0;
    pointer-events: none;
}
.mbn-tip__forever-box {
    box-sizing: border-box;
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    border: 2px solid var(--mbn-tip-check, #256c5a);
    border-radius: 5px;
    background-color: #fff;
    background-image: none;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 11px 11px;
    position: relative;
    transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}
.mbn-tip__forever-check:checked + .mbn-tip__forever-box {
    background-color: var(--mbn-tip-check, #256c5a);
    border-color: var(--mbn-tip-check, #256c5a);
    /* Белая галочка по центру — одинаково на фронте и в предпросмотре */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M2.5 6.2l2.4 2.4 4.6-5'/%3E%3C/svg%3E");
}
.mbn-tip__forever-check:checked + .mbn-tip__forever-box::after {
    content: none;
    display: none;
}
.mbn-tip__forever-check:focus-visible + .mbn-tip__forever-box {
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--mbn-tip-check, #256c5a) 28%, transparent);
}
.mbn-tip__forever:hover .mbn-tip__forever-box {
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--mbn-tip-check, #256c5a) 16%, transparent);
}
.mbn-tip__close {
    position: absolute;
    top: -8px;
    right: -8px;
    z-index: 2;
    width: 22px;
    height: 22px;
    min-width: 22px;
    min-height: 22px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: var(--mbn-tip-close-bg, #ffffff);
    color: var(--mbn-tip-close, #6b857c);
    font-size: 16px;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
    pointer-events: auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    filter: none;
    text-shadow: none;
    transition: background 0.2s ease, color 0.2s ease;
}
.mbn-tip__close:hover,
.mbn-tip__close:focus-visible {
    background: var(--mbn-tip-close-bg-hover, #eef6f3);
    color: var(--mbn-tip-close-hover, #256c5a);
}
.mbn-tip--phase-intro .mbn-tip__close {
    top: 10px;
    right: 12px;
    box-shadow: none;
    background: transparent;
    color: var(--mbn-tip-close, #6b857c);
    font-size: 24px;
    width: auto;
    min-width: 0;
    height: auto;
    min-height: 0;
}
.mbn-tip--phase-intro .mbn-tip__close:hover,
.mbn-tip--phase-intro .mbn-tip__close:focus-visible {
    background: transparent;
    color: var(--mbn-tip-close-hover, #256c5a);
}
.mbn-tip__arrow {
    position: absolute;
    width: 0;
    height: 0;
    border: 8px solid transparent;
    pointer-events: none;
    opacity: 0;
}
.mbn-tip--phase-bubble .mbn-tip__arrow {
    opacity: 1;
}
.mbn-tip--arrow-top .mbn-tip__arrow {
    top: -15px;
    left: 50%;
    transform: translateX(-50%);
    border-bottom-color: var(--mbn-tip-bubble-bg, #256c5a);
}
.mbn-tip--arrow-bottom .mbn-tip__arrow {
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    border-top-color: var(--mbn-tip-bubble-bg, #256c5a);
}
.mbn-tip--arrow-left .mbn-tip__arrow {
    left: -15px;
    top: 50%;
    transform: translateY(-50%);
    border-right-color: var(--mbn-tip-bubble-bg, #256c5a);
}
.mbn-tip--arrow-right .mbn-tip__arrow {
    right: -15px;
    top: 50%;
    transform: translateY(-50%);
    border-left-color: var(--mbn-tip-bubble-bg, #256c5a);
}
.mbn-tip--phase-bubble .mbn-tip__panel {
    position: fixed;
    width: max-content;
    max-width: min(92vw, 240px);
}
.mbn-tip--phase-bubble .mbn-tip__inner {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--mbn-tip-bubble-bg, #256c5a);
    color: var(--mbn-tip-bubble-text, #ffffff);
    border-radius: 100px;
    padding: 10px 36px;
    text-align: center;
    box-shadow: 0 8px 18px rgba(37, 108, 90, 0.28);
}
.mbn-tip--phase-bubble .mbn-tip__title,
.mbn-tip--phase-bubble .mbn-tip__text,
.mbn-tip--phase-bubble .mbn-tip__actions,
.mbn-tip--phase-bubble .mbn-tip__backdrop {
    display: none !important;
}
.mbn-tip--phase-bubble .mbn-tip__bubble-text {
    display: block;
    font-size: var(--mbn-tip-bubble-size, 15px);
    font-weight: var(--mbn-tip-bubble-weight, 700);
    line-height: 1.2;
    white-space: nowrap;
    text-align: center;
}
.mbn-tip--phase-bubble .mbn-tip__forever {
    display: none !important;
}

/* Бейдж истекающего срока */
.mbn-course-card__badge--expiring {
    color: var(--mbn-date-expiring, #d97706) !important;
}

/* Catalog nav: see assets/css/catalog-nav.css */

/* === Темы / коллекции (фронт библиотеки) === */
/* .mbn-library__themes-bar — см. блок панели выше */

.mbn-library__collections,
.mbn-library__collection-tumbler {
    position: relative;
    /* Плашка слайдера по ширине активной вкладки (JS), не 1/3 — иначе «Доступное» наезжает на моб. */
    display: inline-flex;
    align-items: stretch;
    gap: 0;
    padding: var(--mbn-tumbler-track-pad, 3px);
    border-radius: 999px;
    background: var(--mbn-tumbler-track, #f0f5f3);
    border: 1px solid var(--mbn-tumbler-border, var(--mbn-border, #e3ebe7));
    width: auto;
    max-width: 100%;
    min-width: 0;
    min-height: var(--mbn-tumbler-min-height, 36px);
    box-sizing: border-box;
    isolation: isolate;
}

/* Тумблер коллекции в тулбаре: тот же дизайн, что у «По папкам / По доступам». */
.mbn-library__collection-tumbler--compact {
    flex: 0 1 auto;
    align-self: center;
    max-width: min(100%, 420px);
}

.mbn-library__collection-tumbler--compact .mbn-library__collection-tab {
    flex: 0 1 auto;
}

.mbn-library__toolbar > .mbn-library__collection-tumbler--compact,
.mbn-library__toolbar-left > .mbn-library__collection-tumbler--compact {
    order: 0;
}

/*
 * Растянуть пункты коллекции по свободной ширине (широкий экран).
 * Не форсируем min-width 280px — иначе коллекция уезжает на новую строку
 * внутри toolbar-left, а equal-height раздувает соседние кнопки.
 */
@media (min-width: 961px) {
    .mbn-library--collection-fill .mbn-library__toolbar-left {
        flex: 1 1 auto;
        flex-wrap: nowrap;
        min-width: 0;
    }

    .mbn-library--collection-fill .mbn-library__toolbar > .mbn-library__collection-tumbler--compact,
    .mbn-library--collection-fill .mbn-library__toolbar-left > .mbn-library__collection-tumbler--compact {
        flex: 1 1 auto;
        max-width: none;
        min-width: 0;
        width: auto;
    }

    .mbn-library--collection-fill .mbn-library__collection-tumbler--compact .mbn-library__collection-tab {
        flex: 1 1 0;
        min-width: 0;
    }

}

/*
 * Кадр измерения wrap (JS): натуральные ширины, без grow/shrink и без
 * margin-left:auto у тумблера вида. Иначе offsetWidth левого блока ≈ ширина
 * ряда и «По папкам / По доступам» всегда уезжает на новую строку.
 */
.mbn-library.is-measuring-toolbar-wrap .mbn-library__toolbar {
    flex-wrap: nowrap !important;
}

.mbn-library.is-measuring-toolbar-wrap .mbn-library__toolbar-left,
.mbn-library.is-measuring-toolbar-wrap .mbn-library__acc-tools,
.mbn-library.is-measuring-toolbar-wrap .mbn-library__toolbar > .mbn-library__collection-tumbler--compact,
.mbn-library.is-measuring-toolbar-wrap .mbn-library__toolbar-left > .mbn-library__collection-tumbler--compact {
    flex: 0 0 auto !important;
    width: max-content !important;
    max-width: none !important;
    min-width: max-content !important;
}

.mbn-library.is-measuring-toolbar-wrap .mbn-library__collection-tumbler--compact .mbn-library__collection-tab {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: auto !important;
}

.mbn-library.is-measuring-toolbar-wrap .mbn-library__view-tumbler {
    flex: 0 0 240px !important;
    width: 240px !important;
    min-width: 240px !important;
    max-width: 240px !important;
    margin-left: 0 !important;
}

/*
 * Единая высота кнопок/тумблеров = высота «Обновить».
 * Не stretch по строке flex: при переносе коллекции иначе аккордеон/вид
 * растягиваются на всю высоту двухэтажного toolbar-left.
 */
.mbn-library--toolbar-equal-height .mbn-library__toolbar,
.mbn-library--toolbar-equal-height .mbn-library__toolbar-left,
.mbn-library--toolbar-equal-height .mbn-library__acc-tools {
    align-items: center;
}

.mbn-library--toolbar-equal-height .mbn-library__meta-block {
    align-self: center;
}

.mbn-library--toolbar-equal-height .mbn-library__refresh,
.mbn-library--toolbar-equal-height .mbn-library__collection-tumbler--compact,
.mbn-library--toolbar-equal-height .mbn-library__view-tumbler,
.mbn-library--toolbar-equal-height .mbn-library__acc-btn {
    height: var(--mbn-refresh-size, 44px);
    min-height: var(--mbn-refresh-size, 44px);
    max-height: var(--mbn-refresh-size, 44px);
    align-self: center;
    box-sizing: border-box;
}

.mbn-library--toolbar-equal-height .mbn-library__acc-tools {
    align-self: center;
    height: var(--mbn-refresh-size, 44px);
}

/* Подписи кнопок тулбара: always | auto | never */
.mbn-library--toolbar-labels-never .mbn-library__refresh-label,
.mbn-library--accordion-labels-never .mbn-library__acc-btn-label {
    display: none !important;
}

.mbn-library--toolbar-labels-never .mbn-library__refresh {
    padding: 0;
    width: var(--mbn-refresh-size, 44px);
}


.mbn-library--toolbar-labels-always .mbn-library__refresh-label,
.mbn-library--accordion-labels-always .mbn-library__acc-btn-label {
    display: inline !important;
}

.mbn-library--toolbar-labels-always .mbn-library__refresh {
    padding: 0 14px;
    width: auto;
}

/* Узкий десктоп: auto прячет подписи раньше мобильного брейкпоинта. */
@media (max-width: 960px) {
    .mbn-library--toolbar-labels-auto .mbn-library__refresh {
        padding: 0;
        width: var(--mbn-refresh-size, 44px);
    }

    .mbn-library--toolbar-labels-auto .mbn-library__refresh-label,
    .mbn-library--accordion-labels-auto .mbn-library__acc-btn-label {
        display: none;
    }

}

.mbn-library__collection-tumbler-slider {
    position: absolute;
    top: var(--mbn-tumbler-track-pad, 3px);
    bottom: var(--mbn-tumbler-track-pad, 3px);
    left: 0;
    width: 0;
    border-radius: 999px;
    background: var(--mbn-tumbler-slider, #fff);
    box-shadow: 0 1px 3px var(--mbn-tumbler-slider-shadow, rgba(29, 59, 52, 0.14));
    transition: transform 0.22s ease, width 0.22s ease;
    pointer-events: none;
    z-index: 0;
}

.mbn-library__collection-tab {
    appearance: none;
    position: relative;
    z-index: 1;
    flex: 1 1 auto;
    min-width: 0;
    border: 0;
    background: transparent !important;
    color: var(--mbn-tumbler-text, var(--mbn-text, #1d3b34));
    font-size: var(--mbn-tumbler-size, 13px);
    font-weight: 500;
    line-height: 1.35;
    padding: var(--mbn-tumbler-option-pad-y, 6px) var(--mbn-tumbler-option-pad-x, 12px);
    border-radius: 999px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35em;
    min-height: 0;
    white-space: nowrap;
    transition: color 0.2s ease;
    box-shadow: none !important;
}

.mbn-library__collection-tab:hover,
.mbn-library__collection-tab:focus {
    color: var(--mbn-accent, #256c5a);
    outline: none;
    background: transparent !important;
}

.mbn-library__collection-tab:focus-visible {
    outline: 2px solid var(--mbn-accent);
    outline-offset: 2px;
}

.mbn-library__collection-tab.is-active {
    color: var(--mbn-tumbler-text-active, var(--mbn-accent, #256c5a));
    font-weight: 600;
    box-shadow: none !important;
    background: transparent !important;
}

.mbn-library__tab-icon {
    display: inline-flex;
    align-items: center;
    line-height: 1;
}

.mbn-library__tab-icon .fi,
.mbn-library__tab-icon .fa,
.mbn-library__tab-icon .fi::before,
.mbn-library__tab-icon .fa::before {
    line-height: 1;
}

.mbn-library__theme-presets {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
    width: 100%;
}

.mbn-library__theme-preset {
    appearance: none;
    border: 1px solid var(--mbn-chip-border, var(--mbn-border, #e3ebe7));
    background: #fff;
    color: var(--mbn-chip-color, var(--mbn-text, #1d3b34));
    font-size: var(--mbn-chip-size, 12px);
    font-weight: 600;
    line-height: 1.2;
    padding: 6px 12px;
    border-radius: var(--mbn-chip-radius, 999px);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.35em;
    transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

.mbn-library__theme-preset:hover,
.mbn-library__theme-preset:focus {
    border-color: var(--mbn-accent, #256c5a);
    color: var(--mbn-accent, #256c5a);
    outline: none;
}

.mbn-library__theme-preset.is-active {
    background: var(--mbn-accent, #256c5a);
    border-color: var(--mbn-accent, #256c5a);
    color: #fff;
}

.mbn-library__theme-favorites,
.mbn-library__theme-advanced {
    padding: 12px 14px;
    border-radius: var(--mbn-radius, 12px);
    border: 1px solid var(--mbn-block-border, #e3ebe7);
    background: var(--mbn-theme-panel-bg, #f7fafb);
}

.mbn-library__theme-favorites[hidden],
.mbn-library__theme-advanced[hidden],
.mbn-library__theme-access[hidden],
.mbn-library__theme-favorites-panel[hidden],
.mbn-library__theme-dropdown[hidden],
.mbn-theme-modal[hidden] {
    display: none !important;
}

.mbn-library__theme-favorites-head,
.mbn-library__theme-access-head,
.mbn-library__theme-advanced-head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    gap: 6px 10px;
    margin-bottom: 8px;
}

/* Стрелка «Свернуть» подробности группы (как в прототипе toolbar) */
.mbn-library__theme-details-collapse {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 2px 4px;
    border: 0;
    background: transparent;
    color: var(--mbn-muted, #6b857c);
    font: inherit;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    cursor: pointer;
    white-space: nowrap;
}

.mbn-library__theme-details-collapse:hover,
.mbn-library__theme-details-collapse:focus {
    color: var(--mbn-accent, #256c5a);
    outline: none;
}

.mbn-library__theme-details-collapse i,
.mbn-library__theme-details-collapse i::before {
    line-height: 1;
    font-size: 14px;
}

.mbn-library__theme-favorites-title,
.mbn-library__theme-access-title,
.mbn-library__theme-advanced-title {
    display: inline-flex;
    align-items: center;
    gap: 0.4em;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.3;
    color: var(--mbn-accent, #256c5a);
}

.mbn-library__theme-heading-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    color: inherit;
}

.mbn-library__theme-heading-icon .fi,
.mbn-library__theme-heading-icon .fa,
.mbn-library__theme-heading-icon .fi::before,
.mbn-library__theme-heading-icon .fa::before {
    line-height: 1;
}

.mbn-library__theme-search-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-top: 4px;
}

.mbn-library__theme-search-row .mbn-library__theme-combobox {
    flex: 1 1 100%;
    min-width: 0;
    margin: 0;
}

/* Компактная кнопка рядом с заголовком (выше по каскаду, чем общий .theme-cta) */
.mbn-library__theme-cta.mbn-library__theme-cta--beside,
.mbn-library__theme-cta.mbn-library__theme-cta--inline.mbn-library__theme-cta--beside {
    margin: 0;
    padding: 2px 8px;
    min-height: 0;
    height: auto;
    line-height: 1.2;
    font-size: 11px;
    font-weight: 600;
    border-radius: 999px;
    align-self: center;
    box-sizing: border-box;
}

.mbn-library__fav-heart {
    display: inline-flex;
    color: #e11d48;
    line-height: 1;
}

.mbn-library__fav-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.4em;
    padding: 0 6px;
    border-radius: 999px;
    background: var(--mbn-chip-bg, #f0f5f3);
    color: var(--mbn-accent, #256c5a);
    font-size: 11px;
    font-weight: 700;
}

.mbn-library__theme-favorites-toggle {
    appearance: none;
    border: 0;
    background: transparent;
    color: var(--mbn-accent, #256c5a);
    font-size: 13px;
    font-weight: 600;
    padding: 0;
    margin: 0 0 8px;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.4em;
    width: 100%;
    text-align: left;
    box-sizing: border-box;
}

.mbn-library__theme-favorites.is-open .mbn-library__theme-favorites-chevron {
    transform: rotate(180deg);
}

.mbn-library__theme-favorites-toggle .fi {
    line-height: 1;
    display: inline-flex;
}

.mbn-library__theme-favorites-toggle .fi::before {
    line-height: 1;
}

.mbn-library__theme-favorites-chevron {
    font-size: 12px;
    opacity: 0.75;
    margin-left: auto;
    transition: transform .15s;
}

.mbn-library__theme-favorites-panel {
    margin-top: 10px;
}

.mbn-library__theme-combobox {
    position: relative;
    max-width: 420px;
    margin: 8px 0;
}

.mbn-library__theme-search {
    width: 100%;
    max-width: 420px;
    box-sizing: border-box;
    border: 1px solid var(--mbn-border, #e3ebe7);
    border-radius: 10px;
    padding: 8px 12px;
    font-size: 14px;
    background: #fff;
}

.mbn-library__theme-search:focus {
    border-color: var(--mbn-accent, #256c5a);
    outline: none;
    box-shadow: 0 0 0 2px rgba(37, 108, 90, 0.18);
}

.mbn-library__theme-dropdown {
    position: absolute;
    z-index: 40;
    left: 0;
    right: 0;
    top: calc(100% + 4px);
    max-height: 240px;
    overflow: auto;
    margin: 0;
    padding: 8px 10px;
    background: #fff;
    border: 1px solid var(--mbn-border, #e3ebe7);
    border-radius: 10px;
    box-shadow: 0 8px 24px rgba(16, 36, 32, 0.12);
}

.mbn-library__theme-id {
    display: none;
}

.mbn-library__theme-access {
    padding: 12px 14px;
    border-radius: var(--mbn-radius, 12px);
    border: 1px solid var(--mbn-block-border, #e3ebe7);
    background: var(--mbn-theme-panel-bg, #f7fafb);
}

.mbn-library__theme-cta--inline {
    margin-top: 0;
}

.mbn-library__theme-visibility { margin-left:auto; }

.mbn-theme-chip__fav,
.mbn-theme-badge__fav {
    appearance: none;
    border: 0;
    background: transparent;
    color: #9bb5b0;
    padding: 0;
    margin: 0;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    border-radius: 0;
    transition: color 0.15s ease, transform 0.15s ease;
}

.mbn-theme-chip,
.mbn-theme-badge {
    transition: none;
}

.mbn-theme-chip:hover,
.mbn-theme-badge:hover {
    border-color: inherit;
    box-shadow: none;
}

.mbn-theme-badge.is-clickable {
    cursor: pointer;
}

.mbn-theme-badge.is-clickable:hover {
    border-color: var(--mbn-accent, #256c5a);
    box-shadow: 0 1px 4px rgba(29, 59, 52, 0.12);
}

.mbn-theme-badge.is-passthrough {
    pointer-events: none;
}

.mbn-theme-badge.is-passthrough .mbn-theme-badge__fav {
    pointer-events: auto;
}

.mbn-theme-chip__fav:hover,
.mbn-theme-badge__fav:hover,
.mbn-theme-chip__fav:focus,
.mbn-theme-badge__fav:focus {
    color: #e11d48;
    background: transparent;
    outline: none;
    /* без scale — иначе визуально «подпрыгивает» вокруг кнопки */
}

.mbn-theme-chip__fav:focus-visible,
.mbn-theme-badge__fav:focus-visible {
    outline: 2px solid rgba(225, 29, 72, 0.35);
    outline-offset: 2px;
}

.mbn-theme-chip__fav.is-on,
.mbn-theme-badge__fav.is-on {
    color: #e11d48;
}

.mbn-theme-chip__fav .fi,
.mbn-theme-badge__fav .fi,
.mbn-theme-chip__fav .fa,
.mbn-theme-badge__fav .fa,
.mbn-theme-chip__fav .fi::before,
.mbn-theme-badge__fav .fi::before,
.mbn-theme-chip__fav .fa::before,
.mbn-theme-badge__fav .fa::before {
    line-height: 1;
}

.mbn-theme-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    border-radius: var(--mbn-chip-radius, 999px);
    border: 1px solid var(--mbn-chip-border, #e3ebe7);
    background: var(--mbn-chip-bg, #f0f5f3);
    color: var(--mbn-chip-color, #1d3b34);
    font-size: var(--mbn-chip-size, 11px);
    font-weight: 600;
    line-height: 1.3;
}

.mbn-theme-badge--material,
.mbn-theme-badge--level {
    background: var(--mbn-chip-bg, #f0f5f3);
    border-color: var(--mbn-chip-border, #e3ebe7);
    color: var(--mbn-chip-color, #1d3b34);
}

.mbn-library--hide-themes .mbn-theme-badges {
    display: none !important;
}

.mbn-material-row__title-wrap {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px 8px;
    min-width: 0;
    flex: 1 1 auto;
}

.mbn-material-row__title-wrap .mbn-material-row__title {
    flex: 0 1 auto;
    min-width: 0;
}

.mbn-material-row__title-wrap .mbn-hw {
    flex: 0 0 auto;
}

.mbn-material-row .mbn-theme-badges {
    flex: 1 1 100%;
    width: 100%;
    margin: 0;
}

.mbn-material-row__aside,
.mbn-material-row__aside .mbn-course-card__badge,
.mbn-material-row__level {
    font-size: var(--mbn-lesson-meta-size, 12px);
}

.mbn-theme-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0 0 8px;
}

.mbn-theme-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    box-sizing: border-box;
    min-height: 26px;
    /* Вертикальный padding = 0: центрируем по оси flex, иначе line-box шрифта темы тянет текст вверх */
    padding: 0 6px 0 10px;
    border-radius: var(--mbn-chip-radius, 999px);
    background: #fff;
    border: 1px solid var(--mbn-chip-border, #e3ebe7);
    color: var(--mbn-chip-color, #1d3b34);
    font-size: var(--mbn-chip-size, 12px);
    font-weight: 600;
    line-height: 1;
}

.mbn-theme-chip__label {
    display: inline-flex;
    align-items: center;
    margin: 0;
    padding: 0;
    line-height: 1;
    position: relative;
    /* Как у заголовков карточек: nudge школы + лёгкая оптика под «высокие» веб-шрифты */
    top: calc(var(--mbn-font-nudge-text, 0em) + 0.08em);
}

.mbn-library__theme-check-list {
    display: flex;
    flex-direction: column;
    gap: 4px;
    max-height: 220px;
    overflow: auto;
    padding: 4px 0;
}

.mbn-library__theme-check {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 13px;
    color: var(--mbn-text, #1d3b34);
    cursor: pointer;
    padding: 6px 12px;
    border-radius: 8px;
    margin: 0;
    box-sizing: border-box;
}

.mbn-library__theme-check:hover {
    background: var(--mbn-chip-bg, #f0f5f3);
}

.mbn-library__theme-check input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 16px;
    height: 16px;
    margin: 2px 0 0;
    flex: 0 0 16px;
    border: 2px solid var(--mbn-theme-check-border, var(--mbn-accent, #256c5a));
    border-radius: 4px;
    background: var(--mbn-theme-check-bg, #fff);
    cursor: pointer;
    position: relative;
    accent-color: var(--mbn-theme-check-checked-bg, var(--mbn-accent, #256c5a));
    outline: none !important;
    box-shadow: none;
}

.mbn-library__theme-check input[type="checkbox"]:focus,
.mbn-library__theme-check input[type="checkbox"]:focus-visible {
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(37, 108, 90, 0.22);
}

.mbn-library__theme-check input[type="checkbox"]:checked {
    background: var(--mbn-theme-check-checked-bg, var(--mbn-accent, #256c5a));
    border-color: var(--mbn-theme-check-checked-bg, var(--mbn-accent, #256c5a));
}

.mbn-library__theme-check input[type="checkbox"]:checked::after {
    content: "";
    position: absolute;
    left: 4px;
    top: 1px;
    width: 4px;
    height: 8px;
    border: solid var(--mbn-theme-check-checked-color, #fff);
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.mbn-library__theme-check-label {
    flex: 1 1 auto;
    line-height: 1.35;
    padding-top: 1px;
}

.mbn-library__theme-empty-text {
    margin: 6px 0;
    font-size: 13px;
    color: var(--mbn-muted, #6b857c);
}

.mbn-library__theme-cta,
.mbn-library__theme-login-btn,
.mbn-library__theme-reset {
    appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35em;
    margin-top: 8px;
    padding: 8px 14px;
    border-radius: 10px;
    border: 1px solid var(--mbn-accent, #256c5a);
    background: #fff;
    color: var(--mbn-accent, #256c5a);
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease;
}

.mbn-library__theme-cta:hover,
.mbn-library__theme-login-btn:hover,
.mbn-library__theme-reset:hover {
    background: var(--mbn-accent, #256c5a);
    color: #fff;
}

.mbn-library__theme-advanced-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    margin-top: 8px;
}

.mbn-library__theme-remember {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: var(--mbn-text, #1d3b34);
    cursor: pointer;
}

.mbn-library__theme-remember input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 16px;
    height: 16px;
    margin: 0;
    border: 2px solid var(--mbn-theme-check-border, var(--mbn-accent, #256c5a));
    border-radius: 4px;
    background: var(--mbn-theme-check-bg, #fff);
    cursor: pointer;
    position: relative;
    outline: none !important;
    box-shadow: none;
}

.mbn-library__theme-remember input[type="checkbox"]:focus,
.mbn-library__theme-remember input[type="checkbox"]:focus-visible {
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(37, 108, 90, 0.22);
}

.mbn-library__theme-remember input[type="checkbox"]:checked {
    background: var(--mbn-theme-check-checked-bg, var(--mbn-accent, #256c5a));
    border-color: var(--mbn-theme-check-checked-bg, var(--mbn-accent, #256c5a));
}

.mbn-library__theme-remember input[type="checkbox"]:checked::after {
    content: "";
    position: absolute;
    left: 4px;
    top: 1px;
    width: 4px;
    height: 8px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

/* Сброс системного webkit focus ring на всех чекбоксах библиотеки */
.mbn-library input[type="checkbox"]:focus,
.mbn-library input[type="checkbox"]:focus-visible,
.mbn-library input[type="radio"]:focus,
.mbn-library input[type="radio"]:focus-visible,
.mbn-theme-modal input[type="checkbox"]:focus,
.mbn-theme-modal input[type="checkbox"]:focus-visible {
    outline: none !important;
    outline-offset: 0 !important;
    -webkit-tap-highlight-color: transparent;
}

.mbn-theme-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin: 4px 0 2px;
}

.mbn-theme-badge--more {
    appearance: none;
    background: transparent;
    border: 1px dashed var(--mbn-chip-border, #e3ebe7);
    color: var(--mbn-muted, #6b857c);
    cursor: pointer;
    font: inherit;
    font-size: var(--mbn-chip-size, 11px);
    font-weight: 600;
    line-height: 1.2;
    padding: 2px 8px;
    border-radius: var(--mbn-chip-radius, 999px);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.mbn-theme-badge--more:hover,
.mbn-theme-badge--more:focus {
    background: var(--mbn-chip-bg, #f0f5f3);
    border-color: var(--mbn-accent, #256c5a);
    color: var(--mbn-accent, #256c5a);
    outline: none;
}

.mbn-theme-badge--more:focus-visible {
    box-shadow: 0 0 0 3px rgba(65, 163, 175, 0.2);
}

.mbn-theme-modal {
    position: fixed;
    inset: 0;
    z-index: 1000500;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    box-sizing: border-box;
}

html.mbn-theme-modal-open,
html.mbn-theme-modal-open body {
    overflow: hidden !important;
}

.mbn-theme-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(16, 36, 32, 0.55);
}

.mbn-theme-modal__dialog {
    position: relative;
    z-index: 1;
    width: min(480px, 100%);
    max-height: min(80vh, 640px);
    max-height: min(80dvh, 640px);
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: #fff;
    border-radius: 16px;
    padding: 20px 20px 16px;
    box-shadow: 0 16px 48px rgba(16, 36, 32, 0.2);
}

.mbn-theme-modal__x {
    position: absolute;
    top: 10px;
    right: 12px;
    appearance: none;
    border: 0;
    background: transparent;
    font-size: 22px;
    line-height: 1;
    color: #6b857c;
    cursor: pointer;
}

.mbn-theme-modal__title {
    margin: 0 28px 8px 0;
    font-size: 18px;
    color: #1d3b34;
}

.mbn-theme-modal__text {
    margin: 0 0 12px;
    font-size: 14px;
    color: #6b857c;
}

.mbn-theme-modal__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}

.mbn-theme-modal__btn {
    appearance: none;
    border-radius: 10px;
    padding: 8px 14px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.4em;
}

.mbn-theme-modal__btn--ghost {
    border: 1px solid #d5e2dd;
    background: #fff;
    color: #1d3b34;
}

.mbn-theme-modal__btn--primary {
    border: 1px solid var(--mbn-accent, #256c5a);
    background: var(--mbn-accent, #256c5a);
    color: #fff;
}

.mbn-theme-modal__btn--primary.is-loading,
.mbn-theme-modal__btn--primary:disabled {
    opacity: 0.75;
    cursor: wait;
}

.mbn-theme-modal__spinner {
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.35);
    border-top-color: #fff;
    border-radius: 50%;
    animation: mbn-theme-spin 0.7s linear infinite;
}

@keyframes mbn-theme-spin {
    to { transform: rotate(360deg); }
}

@media (max-width: 640px) {
    .mbn-library__collections,
    .mbn-library__collection-tumbler {
        width: 100%;
        min-width: 0;
        display: flex;
    }

    .mbn-library__collection-tab {
        padding-left: 8px;
        padding-right: 8px;
    }

    .mbn-library__theme-presets {
        width: 100%;
    }

    .mbn-library__theme-preset {
        flex: 1 1 calc(50% - 6px);
        justify-content: center;
    }
}

/* Гостевая подсказка: библиотека и активация */
.mbn-guest-hint {
    margin: 0 0 20px;
    padding: var(--mbn-guest-hint-pad-y, 22px) var(--mbn-guest-hint-pad-x, 20px);
    text-align: center;
    background: var(--mbn-guest-hint-bg, #f5faf9);
    border: 1px solid var(--mbn-guest-hint-border, #cadddc);
    border-radius: var(--mbn-guest-hint-radius, 12px);
    box-sizing: border-box;
}

/* display:flex у .__actions / .__icon перебивает UA [hidden] — без этого дубли кнопок/иконок в превью */
.mbn-guest-hint [hidden] {
    display: none !important;
}

.mbn-guest-hint__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}

.mbn-guest-hint__main {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    width: 100%;
}

.mbn-guest-hint__copy {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    width: 100%;
}

.mbn-guest-hint__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--mbn-guest-hint-icon, #41A3AF);
    font-size: var(--mbn-guest-hint-icon-size, 28px);
    line-height: 1;
}

.mbn-guest-hint__icon i,
.mbn-guest-hint__icon i::before {
    line-height: 1;
}

/* «Рядом с заголовком» только для стека — в notice иконка уже слева от блока текста. */
.mbn-guest-hint--stack.mbn-guest-hint--icon-beside .mbn-guest-hint__copy {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 10px;
}

.mbn-guest-hint--stack.mbn-guest-hint--icon-beside .mbn-guest-hint__title {
    margin: 0;
}

.mbn-guest-hint__title {
    margin: 0;
    font-size: var(--mbn-guest-hint-title-size, 20px);
    font-weight: 600;
    color: var(--mbn-guest-hint-title, #256c5a);
    line-height: 1.3;
}

.mbn-guest-hint__text {
    margin: 0;
    font-size: var(--mbn-guest-hint-text-size, 14px);
    line-height: 1.45;
    color: var(--mbn-guest-hint-text, #4a5c57);
}

.mbn-guest-hint__btn {
    appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35em;
    padding: var(--mbn-guest-hint-btn-pad-y, 10px) var(--mbn-guest-hint-btn-pad-x, 18px);
    border-radius: var(--mbn-guest-hint-btn-radius, 10px);
    border: 1px solid var(--mbn-guest-hint-btn-bg, #41A3AF);
    background: var(--mbn-guest-hint-btn-bg, #41A3AF);
    color: var(--mbn-guest-hint-btn-color, #fff) !important;
    text-decoration: none !important;
    font-size: var(--mbn-guest-hint-btn-font-size, 14px);
    font-weight: 600;
    line-height: 1;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.mbn-guest-hint__btn:hover,
.mbn-guest-hint__btn:focus {
    filter: none;
    background: var(--mbn-guest-hint-btn-bg-hover, #2d8b96);
    border-color: var(--mbn-guest-hint-btn-bg-hover, #2d8b96);
    color: var(--mbn-guest-hint-btn-color-hover, #fff) !important;
}

.mbn-guest-hint__link {
    color: var(--mbn-guest-hint-link, #41A3AF) !important;
    font-size: var(--mbn-guest-hint-link-font-size, 14px);
    font-weight: 600;
    text-decoration: underline;
    transition: color 0.15s ease;
}

.mbn-guest-hint__link:hover,
.mbn-guest-hint__link:focus {
    opacity: 1;
    color: var(--mbn-guest-hint-link-hover, #2d8b96) !important;
}

/* Выравнивание стека */
.mbn-guest-hint--stack.mbn-guest-hint--align-left {
    text-align: left;
}
.mbn-guest-hint--stack.mbn-guest-hint--align-left .mbn-guest-hint__inner,
.mbn-guest-hint--stack.mbn-guest-hint--align-left .mbn-guest-hint__main,
.mbn-guest-hint--stack.mbn-guest-hint--align-left .mbn-guest-hint__copy {
    align-items: flex-start;
}
.mbn-guest-hint--stack.mbn-guest-hint--align-left .mbn-guest-hint__actions {
    justify-content: flex-start;
}
.mbn-guest-hint--stack.mbn-guest-hint--align-left.mbn-guest-hint--icon-beside .mbn-guest-hint__copy {
    justify-content: flex-start;
}

.mbn-guest-hint--stack.mbn-guest-hint--align-right {
    text-align: right;
}
.mbn-guest-hint--stack.mbn-guest-hint--align-right .mbn-guest-hint__inner,
.mbn-guest-hint--stack.mbn-guest-hint--align-right .mbn-guest-hint__main,
.mbn-guest-hint--stack.mbn-guest-hint--align-right .mbn-guest-hint__copy {
    align-items: flex-end;
}
.mbn-guest-hint--stack.mbn-guest-hint--align-right .mbn-guest-hint__actions {
    justify-content: flex-end;
}
.mbn-guest-hint--stack.mbn-guest-hint--align-right.mbn-guest-hint--icon-beside .mbn-guest-hint__copy {
    justify-content: flex-end;
}

.mbn-guest-hint--stack.mbn-guest-hint--align-center {
    text-align: center;
}
.mbn-guest-hint--stack.mbn-guest-hint--align-center .mbn-guest-hint__inner,
.mbn-guest-hint--stack.mbn-guest-hint--align-center .mbn-guest-hint__main,
.mbn-guest-hint--stack.mbn-guest-hint--align-center .mbn-guest-hint__copy {
    align-items: center;
}
.mbn-guest-hint--stack.mbn-guest-hint--align-center .mbn-guest-hint__actions {
    justify-content: center;
}
.mbn-guest-hint--stack.mbn-guest-hint--align-center.mbn-guest-hint--icon-beside .mbn-guest-hint__copy {
    justify-content: center;
}

.mbn-guest-hint__cta--inline {
    margin-left: 0.35em;
    white-space: nowrap;
}

.mbn-guest-hint--notice {
    text-align: left;
}

.mbn-guest-hint--notice .mbn-guest-hint__inner {
    align-items: stretch;
}

.mbn-guest-hint--notice .mbn-guest-hint__main {
    flex-direction: row;
    align-items: flex-start;
    gap: 12px;
}

.mbn-guest-hint--notice .mbn-guest-hint__copy {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-start;
    text-align: left;
    flex: 1 1 auto;
    min-width: 0;
    width: auto;
    gap: 6px;
}

.mbn-guest-hint--notice .mbn-guest-hint__icon {
    flex: 0 0 auto;
    margin-top: 2px;
}

.mbn-guest-hint--notice.mbn-guest-hint--btn-column .mbn-guest-hint__inner {
    flex-direction: row;
    align-items: stretch;
    gap: 16px;
}

.mbn-guest-hint--notice.mbn-guest-hint--btn-column .mbn-guest-hint__actions {
    display: flex;
    flex: 0 0 auto;
    margin-left: auto;
}

.mbn-guest-hint--notice.mbn-guest-hint--btn-align-top .mbn-guest-hint__actions {
    align-items: flex-start;
}

.mbn-guest-hint--notice.mbn-guest-hint--btn-align-center .mbn-guest-hint__actions {
    align-items: center;
}

.mbn-guest-hint--notice.mbn-guest-hint--btn-align-bottom .mbn-guest-hint__actions {
    align-items: flex-end;
}

.mbn-guest-hint--notice.mbn-guest-hint--btn-below .mbn-guest-hint__actions,
.mbn-guest-hint--stack .mbn-guest-hint__actions {
    width: 100%;
    display: flex;
    justify-content: center;
}

.mbn-guest-hint--notice.mbn-guest-hint--btn-below .mbn-guest-hint__actions--in-copy {
    width: auto;
    margin-top: 6px;
    justify-content: flex-start;
}

.mbn-guest-hint--notice .mbn-guest-hint__copy .mbn-guest-hint__text {
    display: inline;
}

.mbn-guest-hint--notice.mbn-guest-hint--btn-inline .mbn-guest-hint__copy {
    display: block;
}

@media (max-width: 767px) {
    .mbn-guest-hint--notice.mbn-guest-hint--btn-column .mbn-guest-hint__inner {
        flex-direction: column;
    }
    .mbn-guest-hint--notice.mbn-guest-hint--btn-column .mbn-guest-hint__actions {
        margin-left: 0;
        width: 100%;
        justify-content: flex-start;
    }
}

.mbn-library__guest-top {
    margin: 0 0 8px;
}

.mbn-library__guest-marketing {
    margin: 0 0 20px;
    padding: 16px 18px;
    background: #fff;
    border: 1px solid #e3ebe7;
    border-radius: 12px;
    box-sizing: border-box;
}

.mbn-library__guest-marketing--tab {
    margin: 12px 0 0;
}

.mbn-library__theme-guest-note {
    margin: 8px 0 0;
    font-size: 13px;
    line-height: 1.4;
    color: #5a6b66;
}

.mbn-library__theme-guest-fav {
    margin-top: 8px;
}

.mbn-library__theme-guest-fav .mbn-library__theme-login-btn {
    margin-top: 8px;
}

.mbn-library__theme-favorites-editor .mbn-library__theme-login-btn {
    margin-top: 10px;
}

.mbn-library__untagged-toggle {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 10px 0 0;
    padding: 0;
    font-size: 13px;
    line-height: 1.35;
    color: #3d4f4a;
    cursor: pointer;
    user-select: none;
}

.mbn-library__untagged-toggle input {
    margin: 2px 0 0;
    flex: 0 0 auto;
}

.mbn-library__untagged-toggle[hidden] {
    display: none !important;
}

.mbn-library__theme-guest-tip {
    margin-top: 8px;
}

.mbn-library__theme-guest-tip .mbn-library__theme-login-btn {
    margin-top: 8px;
}

.mbn-library--guest [data-mbn-access-add-all],
.mbn-library--guest [data-mbn-fav-from-access] {
    display: none !important;
}

.mbn-library__guest-marketing > *:first-child {
    margin-top: 0;
}

.mbn-library__guest-marketing > *:last-child {
    margin-bottom: 0;
}

.mbn-library__guest-marketing p {
    margin: 0 0 0.85em;
}

.mbn-library__guest-marketing p:last-child {
    margin-bottom: 0;
}

.mbn-library__guest-marketing p:empty {
    min-height: 0.85em;
    margin-bottom: 0.85em;
}

.mbn-library__guest-marketing .mbn-mkt-btn,
.mbn-library__guest-marketing a.mbn-mkt-btn {
    display: inline-block;
    padding: 10px 20px;
    background: #333;
    color: #fff !important;
    text-decoration: none !important;
    border-radius: 6px;
    line-height: 1.3;
}

.mbn-activation-page--guest .mbn-guest-hint {
    margin: 28px 0 40px;
}

/* Шорткод [mbn_library] внутри материала MEMBERLUX (.lesson-content / .content-wrap). */
.mbn-library-embed {
    max-width: 100%;
    box-sizing: border-box;
    clear: both;
    /* Место под box-shadow поиска/карточек, если родитель всё же с overflow:hidden */
    padding: 10px 8px 14px;
    margin: -6px -4px -8px;
}

/* MEMBERLUX: .content-wrap { overflow:hidden } обрезает тени — снимаем, когда внутри библиотека. */
.lesson-tabs.white-tabs .tab-content .tab-pane .content-wrap:has(.mbn-library-embed),
.content-wrap:has(.mbn-library-embed),
.lesson-content:has(.mbn-library-embed),
.wpm-content:has(.mbn-library-embed) {
    overflow: visible !important;
}

.lesson-content .mbn-library-embed,
.content-wrap .mbn-library-embed,
.wpm-content .mbn-library-embed,
.lesson-content .mbn-library,
.content-wrap .mbn-library,
.wpm-content .mbn-library {
    max-width: 100%;
    overflow: visible;
    box-sizing: border-box;
}

/* Если wpautop всё же вставил <p>/<br> — не ломать тумблеры и кнопки. */
.mbn-library__collection-tumbler > p,
.mbn-library__view-tumbler > p,
.mbn-library__collections > p {
    display: contents;
}

.mbn-library__acc-btn > br,
.mbn-library__view-option > br,
.mbn-library__collection-tab > br {
    display: none !important;
}

.lesson-content .mbn-library__collection-tumbler,
.lesson-content .mbn-library__view-tumbler,
.content-wrap .mbn-library__collection-tumbler,
.content-wrap .mbn-library__view-tumbler,
.wpm-content .mbn-library__collection-tumbler,
.wpm-content .mbn-library__view-tumbler {
    max-width: 100%;
}


/* Keep the closed-card surface visible in both folder and access grouping. */
.mbn-library .mbn-course-card.is-locked {
    background-color: var(--mbn-locked-card-bg, #fff5f5);
    background-image: repeating-linear-gradient(-45deg,
        var(--mbn-locked-stripe-a, rgba(232,160,160,.18)) 0 10px,
        var(--mbn-locked-stripe-b, rgba(232,160,160,.32)) 10px 20px);
    border: 1px solid var(--mbn-locked-card-border, #f0b4b4);
}
.mbn-library .mbn-course-card.is-locked > .mbn-course-card__main,
.mbn-library .mbn-course-card.is-locked > .mbn-course-card__levels-list,
.mbn-library .mbn-course-card.is-locked > .mbn-course-card__materials-list,
.mbn-library .mbn-course-card.is-locked > .mbn-course-card__levels-list > .mbn-level-row {
    background: transparent;
}
.mbn-library .mbn-course-card.is-locked > .mbn-course-card__levels-list > .mbn-level-row,
.mbn-library .mbn-course-card.is-locked .mbn-course-card__folder-crumb,
.mbn-library .mbn-course-card.is-locked .mbn-course-card__module-line,
.mbn-library .mbn-course-card.is-locked .mbn-level-row__icon {
    color: var(--mbn-locked-meta, #b33333);
}

/* One closed palette for the whole surface, including access-group wrappers. */
.mbn-library .mbn-course-card.is-locked {
    --mbn-accent: var(--mbn-locked-title, #9b2c2c);
    --mbn-crumb-color: var(--mbn-locked-meta, #b33333);
    --mbn-muted: var(--mbn-locked-meta, #b33333);
    --mbn-crumb-color-hover: var(--mbn-locked-title, #9b2c2c);
    --mbn-accent-hover: var(--mbn-locked-btn-hover-bg, #9b2c2c);
    --mbn-accent-soft: var(--mbn-locked-toggle-bg, #fff5f5);
    --mbn-text: var(--mbn-locked-title, #9b2c2c);
    --mbn-acc-btn-bg: var(--mbn-locked-toggle-bg, #fff5f5);
    --mbn-acc-btn-color: var(--mbn-locked-toggle-color, #9b2c2c);
    --mbn-acc-btn-border: var(--mbn-locked-toggle-border, #e08080);
}
.mbn-library .mbn-course-card.is-locked {
    --mbn-row1-bg: transparent;
    --mbn-row1-bg-hover: transparent;
    --mbn-row1-color: var(--mbn-locked-meta, #b33333);
    --mbn-row1-color-hover: var(--mbn-locked-title, #9b2c2c);
    --mbn-row1-border-bottom-color: var(--mbn-locked-divider, #f0b4b4);
    --mbn-row1-border-left-color: var(--mbn-locked-divider, #f0b4b4);
}
.mbn-library .mbn-course-card.is-locked {
    --mbn-row2-bg: transparent;
    --mbn-row2-bg-hover: transparent;
    --mbn-row2-color: var(--mbn-locked-meta, #b33333);
    --mbn-row2-color-hover: var(--mbn-locked-title, #9b2c2c);
    --mbn-row2-border-bottom-color: var(--mbn-locked-divider, #f0b4b4);
    --mbn-row2-border-left-color: var(--mbn-locked-divider, #f0b4b4);
}
.mbn-library .mbn-course-card.is-locked {
    --mbn-row3-bg: transparent;
    --mbn-row3-bg-hover: transparent;
    --mbn-row3-color: var(--mbn-locked-meta, #b33333);
    --mbn-row3-color-hover: var(--mbn-locked-title, #9b2c2c);
    --mbn-row3-border-bottom-color: var(--mbn-locked-divider, #f0b4b4);
    --mbn-row3-border-left-color: var(--mbn-locked-divider, #f0b4b4);
}
.mbn-library .mbn-course-card.is-locked {
    --mbn-row4-bg: transparent;
    --mbn-row4-bg-hover: transparent;
    --mbn-row4-color: var(--mbn-locked-meta, #b33333);
    --mbn-row4-color-hover: var(--mbn-locked-title, #9b2c2c);
    --mbn-row4-border-bottom-color: var(--mbn-locked-divider, #f0b4b4);
    --mbn-row4-border-left-color: var(--mbn-locked-divider, #f0b4b4);
}
.mbn-library .mbn-course-card.is-locked {
    --mbn-row5-bg: transparent;
    --mbn-row5-bg-hover: transparent;
    --mbn-row5-color: var(--mbn-locked-meta, #b33333);
    --mbn-row5-color-hover: var(--mbn-locked-title, #9b2c2c);
    --mbn-row5-border-bottom-color: var(--mbn-locked-divider, #f0b4b4);
    --mbn-row5-border-left-color: var(--mbn-locked-divider, #f0b4b4);
}

.mbn-library .mbn-course-card.is-locked:hover {
    background-color: var(--mbn-locked-card-bg-hover, #ffeaea);
    border-color: var(--mbn-locked-card-border-hover, #e08080);
    box-shadow: none;
}
.mbn-library .mbn-course-card.is-locked > .mbn-course-card__main,
.mbn-library .mbn-course-card.is-locked > .mbn-course-card__main:hover,
.mbn-library .mbn-course-card.is-locked > .mbn-course-card__levels-list,
.mbn-library .mbn-course-card.is-locked > .mbn-course-card__materials-list,
.mbn-library .mbn-course-card.is-locked > .mbn-course-card__levels-list > .mbn-level-row:hover {
    background: transparent !important;
    border-color: var(--mbn-locked-divider, #f0b4b4);
}
/* L2 stays a flat row; no second outline within the access card. */
.mbn-library .mbn-library-level-card > .mbn-course-card__materials-list > .mbn-course-card.is-locked {
    border: 0;
    border-bottom: 1px solid var(--mbn-locked-divider, #f0b4b4);
    border-radius: 0;
    box-shadow: none;
}
.mbn-library .mbn-library-level-card > .mbn-course-card__materials-list > .mbn-course-card.is-locked:last-child {
    border-bottom: 0;
}
.mbn-library .mbn-library-level-card.is-locked > .mbn-course-card__materials-list > .mbn-course-card.is-locked {
    background: transparent !important;
}
.mbn-library .mbn-course-card.is-locked .mbn-course-card__count-toggle {
    background: var(--mbn-locked-toggle-bg, #fff5f5) !important;
    border-color: var(--mbn-locked-toggle-border, #e08080) !important;
    color: var(--mbn-locked-toggle-color, #9b2c2c) !important;
}
.mbn-library .mbn-course-card.is-locked .mbn-course-card__count-toggle:hover,
.mbn-library .mbn-course-card.is-locked .mbn-course-card__count-toggle:focus-visible {
    background: var(--mbn-locked-toggle-hover-bg, #fde8e8) !important;
    color: var(--mbn-locked-toggle-hover-color, #7f1d1d) !important;
}
.mbn-library .mbn-course-card.is-locked .mbn-course-card__count-toggle i,
.mbn-library .mbn-course-card.is-locked .mbn-course-card__count-icon,
.mbn-library .mbn-course-card.is-locked .mbn-course-card__count-chevron {
    color: inherit !important;
}
.mbn-library .mbn-course-card.is-locked .mbn-course-card__main.is-expandable::after {
    border-color: var(--mbn-locked-meta, #b33333) !important;
}
.mbn-library .mbn-course-card.is-locked .mbn-course-card__progress-bar {
    background: var(--mbn-locked-progress-bg, #fff5f5);
}
.mbn-library .mbn-course-card.is-locked .mbn-course-card__progress-bar > i {
    background: var(--mbn-locked-progress-bar, #c53030);
}
.mbn-library .mbn-course-card.is-locked .mbn-course-card__progress {
    color: var(--mbn-locked-progress-color, #9b2c2c);
}
.mbn-library .mbn-course-card.is-locked .mbn-theme-badge {
    background: var(--mbn-locked-theme-bg, #fff5f5) !important;
    border-color: var(--mbn-locked-theme-border, #f0b4b4) !important;
    color: var(--mbn-locked-theme-color, #9b2c2c) !important;
}
.mbn-library .mbn-course-card.is-locked .mbn-theme-badge:hover {
    background: var(--mbn-locked-theme-hover-bg, #fde8e8) !important;
}
.mbn-library .mbn-course-card.is-locked .mbn-theme-badge__fav:not(.is-on) {
    color: var(--mbn-locked-theme-color, #9b2c2c);
}
.mbn-library .mbn-course-card.is-locked .mbn-at-locked-more {
    color: var(--mbn-locked-meta, #b33333);
    border-color: var(--mbn-locked-divider, #f0b4b4);
}

.mbn-library .mbn-course-card.is-locked .mbn-course-card__btn:hover,
.mbn-library .mbn-course-card.is-locked .mbn-course-card__btn:focus-visible {
    box-shadow: none;
}
.mbn-library .mbn-course-card.is-locked .mbn-at-locked-more:hover {
    background: var(--mbn-locked-toggle-hover-bg, #fde8e8);
}

/* Hover previews the marked color, independently of the card's access palette. */
.mbn-library .mbn-mark:hover,
.mbn-library .mbn-mark:focus-visible {
    background: rgba(255, 255, 255, .75);
}
.mbn-library .mbn-mark--star:hover,
.mbn-library .mbn-mark--star:focus-visible {
    color: var(--mbn-mark-star-on, #d4a017) !important;
}
.mbn-library .mbn-mark--bookmark:hover,
.mbn-library .mbn-mark--bookmark:focus-visible {
    color: var(--mbn-mark-bookmark-on, #41a3af) !important;
}
.mbn-library__theme-feedback {
    position: fixed;
    width: max-content;
    max-width: min(420px, calc(100vw - 16px));
    box-sizing: border-box;
    z-index: 1000;
    box-shadow: 0 5px 20px color-mix(in srgb, var(--mbn-filter-notice-shadow-color, #142d25) var(--mbn-filter-notice-shadow-opacity, 14%), transparent);
    animation: mbn-feedback-appear .2s ease-out;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: var(--mbn-filter-notice-padding-y, 8px) var(--mbn-filter-notice-padding-x, 12px);
    margin: 0;
    border: var(--mbn-filter-notice-border-width, 1px) solid var(--mbn-filter-notice-border, #cfd8d4);
    border-radius: var(--mbn-filter-notice-radius, 10px);
    background: var(--mbn-filter-notice-bg, #fff);
    color: var(--mbn-filter-notice-color, #1d3b34);
    font-size: var(--mbn-filter-notice-font-size, 14px);
    line-height: 1.45;
    cursor: pointer;
}
.mbn-library__theme-feedback::before {
    content: '';
    position: absolute;
    left: var(--mbn-feedback-arrow-x, 24px);
    top: -6px;
    width: 10px;
    height: 10px;
    transform: rotate(45deg);
    background: inherit;
    border-top: inherit;
    border-left: inherit;
}
.mbn-library__theme-feedback.is-above::before {
    top: auto;
    bottom: -6px;
    transform: rotate(225deg);
}
.mbn-library__theme-feedback[hidden] { display: none; }
.mbn-library__theme-feedback button {
    appearance: none;
    border: 0;
    padding: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    cursor: pointer;
    box-shadow: none;
}
.mbn-library__theme-feedback .mbn-library__theme-feedback-open {
    flex: 1 1 auto;
    min-width: 0;
    text-align: left;
    white-space: normal;
    overflow-wrap: anywhere;
    font-weight: 400;
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 2px 8px;
}
.mbn-library__theme-feedback-action { color: var(--mbn-filter-notice-link-color, #1d3b34); text-decoration: var(--mbn-filter-notice-link-underline, underline); text-underline-offset: 2px; white-space: nowrap; }
.mbn-library__theme-feedback-open:hover .mbn-library__theme-feedback-action,
.mbn-library__theme-feedback-open:focus-visible .mbn-library__theme-feedback-action { color: var(--mbn-filter-notice-link-hover-color, #256c5a); text-decoration: var(--mbn-filter-notice-link-hover-underline, underline); }
.mbn-library__theme-feedback button:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.mbn-library__theme-feedback .mbn-library__theme-feedback-dismiss {
    width: auto;
    height: auto;
    min-width: 0;
    min-height: 0;
    padding: 0;
    margin: 0;
    border-radius: 0;
    flex: 0 0 auto;
    font-size: var(--mbn-filter-notice-close-size, 18px);
    color: var(--mbn-filter-notice-close-color, #6b857c);
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
}
.mbn-library__theme-feedback .mbn-library__theme-feedback-dismiss:hover,
.mbn-library__theme-feedback .mbn-library__theme-feedback-dismiss:focus-visible {
    background: transparent;
    color: var(--mbn-filter-notice-close-hover-color, #1d3b34);
}
.mbn-library__theme-feedback--preview { position: relative; margin: 16px 0; animation: none; }
@keyframes mbn-feedback-appear {
    from { opacity: 0; transform: translateY(-6px); }
    to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
    .mbn-library__theme-feedback { animation: none; }
}
.mbn-library .mbn-course-card.is-locked > .mbn-course-card__main.is-expandable:hover,
.mbn-library .mbn-course-card.is-locked > .mbn-course-card__main.is-expandable:focus-visible {
    background: var(--mbn-locked-card-bg-hover, #ffeaea) !important;
    cursor: pointer;
}
.mbn-library .mbn-course-card.is-locked .mbn-course-card__count-chevron::after {
    border-right-color: currentColor !important;
    border-bottom-color: currentColor !important;
}

/* Коллекции в начале строки активных фильтров. */
.mbn-library__filter-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin: 10px 0; }
.mbn-library__filter-row:not(:has(> :not([hidden]))) { display: none; }
.mbn-library__filter-row > .mbn-library__active-chips { margin: 0; flex: 0 1 auto; }
.mbn-library__filter-row > .mbn-library__collection-tumbler { flex: 0 0 auto; width: auto; max-width: 100%; }
.mbn-library__filter-row > .mbn-library__collection-tumbler .mbn-library__collection-tab { flex: 0 0 auto; }
.mbn-library .mbn-library__collection-tab { min-width: var(--mbn-collection-option-min-width, 90px); }
@media (max-width: 640px) {
    .mbn-library .mbn-library__collection-tumbler { overflow-x: auto; }
    .mbn-library__filter-row > .mbn-library__collection-tumbler { flex-shrink: 1; }
}

.mbn-course-card__folder-marks { display:inline-flex; align-items:center; flex-wrap:wrap; gap:4px; margin-left:6px; }

.mbn-course-card__folder-label { display:inline-flex; align-items:center; flex:0 1 auto; min-width:0; margin:0; }
.mbn-course-card__folder-label .mbn-material-module__title { align-self:center; }
.mbn-course-card__module-line:has(.mbn-course-card__folder-marks) { align-items:center; flex-wrap:wrap; }

/* Shared cross geometry in the library and design preview. */
.mbn-library__theme-feedback .mbn-library__theme-feedback-dismiss { align-self: center; }
.mbn-library__theme-feedback .mbn-library__theme-feedback-dismiss svg { display: block; width: 1em; height: 1em; flex: none; }

/* Same close icon in chips, search, dialogs and notice previews. */
svg.mbn-close-icon { display: block; width: .8em; height: .8em; min-width: 0; max-width: none; flex: 0 0 auto; margin: 0; padding: 0; pointer-events: none; }

.mbn-library__search-clear, .mbn-theme-modal__x { display: inline-flex; align-items: center; justify-content: center; }

/* Compact chip cross, independent of chip text and button hit area. */
.mbn-library__active-chip-remove svg.mbn-close-icon,
.mbn-theme-chip__remove svg.mbn-close-icon {
    width: var(--mbn-chip-close-size, 12px);
    height: var(--mbn-chip-close-size, 12px);
}
.mbn-library .mbn-library__active-chip-open {
    appearance: none; display: inline-flex; align-items: center; gap: 6px;
    border: 0; background: transparent; padding: 0; margin: 0;
    min-width: 0; min-height: 0; font: inherit; line-height: inherit;
    color: inherit; box-shadow: none; cursor: pointer; border-radius: 3px;
}
.mbn-library .mbn-library__active-chip-open:hover .mbn-library__active-chip-label { text-decoration: underline; text-underline-offset: 2px; }
.mbn-library .mbn-library__active-chip-open:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }

.mbn-library__search-clear svg.mbn-close-icon { width: 1em; height: 1em; }

/* Close controls: transparent by default, soft circular hover; independent opacity. */
.mbn-library__active-chip-remove, .mbn-theme-chip__remove { background: color-mix(in srgb, var(--mbn-chip-close-bg, #ffffff) var(--mbn-chip-close-bg-opacity, 0%), transparent); border-radius: 50%; box-shadow: none; }
.mbn-library__active-chip-remove:hover, .mbn-library__active-chip-remove:focus-visible, .mbn-theme-chip__remove:hover, .mbn-theme-chip__remove:focus-visible, .mbn-library__active-chip-remove:focus, .mbn-theme-chip__remove:focus { background: color-mix(in srgb, var(--mbn-chip-close-hover-bg, #eef6f3) var(--mbn-chip-close-hover-bg-opacity, 100%), transparent); }
.mbn-library__search-clear { background: color-mix(in srgb, var(--mbn-search-clear-bg, #ffffff) var(--mbn-search-clear-bg-opacity, 0%), transparent); border-radius: 50%; box-shadow: none; }
.mbn-library__search-clear:hover, .mbn-library__search-clear:focus-visible, .mbn-library__search-clear:focus { background: color-mix(in srgb, var(--mbn-search-clear-hover-bg, #eef6f3) var(--mbn-search-clear-hover-bg-opacity, 100%), transparent); }
.mbn-library__theme-feedback .mbn-library__theme-feedback-dismiss { background: color-mix(in srgb, var(--mbn-filter-notice-close-bg, #ffffff) var(--mbn-filter-notice-close-bg-opacity, 0%), transparent); border-radius: 50%; box-shadow: none; }
.mbn-library__theme-feedback .mbn-library__theme-feedback-dismiss:hover, .mbn-library__theme-feedback .mbn-library__theme-feedback-dismiss:focus-visible, .mbn-library__theme-feedback .mbn-library__theme-feedback-dismiss:focus { background: color-mix(in srgb, var(--mbn-filter-notice-close-hover-bg, #eef6f3) var(--mbn-filter-notice-close-hover-bg-opacity, 100%), transparent); }
.mbn-theme-modal__x { background: color-mix(in srgb, var(--mbn-modal-close-bg, #ffffff) var(--mbn-modal-close-bg-opacity, 0%), transparent); border-radius: 50%; box-shadow: none; }
.mbn-theme-modal__x:hover { background: color-mix(in srgb, var(--mbn-modal-close-hover-bg, #eef6f3) var(--mbn-modal-close-hover-bg-opacity, 100%), transparent); }
.mbn-tip__close, .mbn-tip--phase-intro .mbn-tip__close { background: color-mix(in srgb, var(--mbn-tip-close-bg, #ffffff) var(--mbn-tip-close-bg-opacity, 0%), transparent); border-radius: 50%; box-shadow: none; }
.mbn-tip__close:hover, .mbn-tip__close:focus-visible, .mbn-tip--phase-intro .mbn-tip__close:hover, .mbn-tip--phase-intro .mbn-tip__close:focus-visible, .mbn-tip__close:focus, .mbn-tip--phase-intro .mbn-tip__close:focus { background: color-mix(in srgb, var(--mbn-tip-close-bg-hover, #eef6f3) var(--mbn-tip-close-hover-bg-opacity, 100%), transparent); }
 .mbn-library__theme-feedback .mbn-library__theme-feedback-dismiss, .mbn-theme-modal__x { padding: 4px; }

/* A module's own progress stays compact beside its marks and lesson count. */
.mbn-material-module__meta > .mbn-course-card__progress-wrap {
    font-size: inherit;
}
.mbn-material-module__meta .mbn-course-card__progress-bar {
    width: 56px;
}
@media (min-width: 641px) {
    .mbn-material-module__meta > .mbn-course-card__progress-wrap,
    .mbn-material-module__meta > [data-mbn-preview-progress-subfolder] {
        margin-right: 8px;
    }
}
@media (max-width: 480px) {
    .mbn-material-module__meta .mbn-course-card__progress-bar {
        width: 32px;
    }
}

/* Only the list scrolls; modal heading, search and actions stay visible. */
.mbn-theme-modal__dialog:focus { outline: none; }
.mbn-theme-modal__dialog > :not([data-mbn-theme-modal-list]) { flex-shrink: 0; }
.mbn-theme-modal [data-mbn-theme-modal-list] { flex: 1 1 auto; min-height: 0; max-height: none; overflow-y: auto; overscroll-behavior: contain; }
.mbn-theme-modal [data-mbn-theme-modal-list] > label { flex-shrink: 0; }
.mbn-theme-modal [data-mbn-theme-modal-list] > label[hidden],
.mbn-theme-search-clear[hidden], .mbn-theme-modal__search[hidden], .mbn-theme-modal__empty[hidden] { display: none !important; }
.mbn-theme-modal__search { margin-bottom: 8px; }
.mbn-theme-modal__empty { margin: 8px 0; font-size: 14px; }
.mbn-theme-modal__x:focus-visible, .mbn-theme-search-clear:focus-visible { outline: 2px solid var(--mbn-accent, #256c5a); outline-offset: 2px; }
.mbn-theme-search-field { position: relative; width: 100%; }
.mbn-theme-search-field .mbn-library__theme-search { padding-right: calc(var(--mbn-theme-search-clear-size, 14px) + 24px); }
.mbn-theme-search-field input::-webkit-search-cancel-button { -webkit-appearance: none; }
.mbn-theme-search-clear { position: absolute; right: 8px; top: 50%; transform: translateY(-50%); display: inline-flex; align-items: center; justify-content: center; appearance: none; border: 0; margin: 0; padding: 3px; width: auto; height: auto; min-width: 0; min-height: 0; line-height: 1; font-size: var(--mbn-theme-search-clear-size, 14px); color: var(--mbn-theme-search-clear-color, #6b857c); background: color-mix(in srgb, var(--mbn-theme-search-clear-bg, #fff) var(--mbn-theme-search-clear-bg-opacity, 0%), transparent); border-radius: 50%; box-shadow: none; cursor: pointer; }
.mbn-theme-search-clear:hover { color: var(--mbn-theme-search-clear-hover-color, #256c5a); background: color-mix(in srgb, var(--mbn-theme-search-clear-hover-bg, #eef6f3) var(--mbn-theme-search-clear-hover-bg-opacity, 100%), transparent); }

.mbn-theme-modal__error { margin: 8px 0 0; color: #b42318; font-size: 14px; }
.mbn-theme-modal__error[hidden] { display: none !important; }

/* Current lesson in a scoped library; all other rows retain ordinary styles. */
.mbn-library .mbn-material-row.is-toc-current { background:var(--mbn-accent-soft,#edf5f3); box-shadow:inset 3px 0 var(--mbn-accent,#256c5a); }

/* Explicit display must not override the native hidden state. */
.mbn-library__quick-btn[hidden] { display: none !important; }

/* Lesson dates have independent visibility; card deadlines remain visible. */
.mbn-date-mobile { display:none; }
.mbn-library__lesson-date-toggle[hidden] { display:none !important; }

.mbn-library[data-lesson-dates-user="0"] .mbn-material-row__aside > .mbn-course-card__badge,
.mbn-library[data-view="folders"][data-lesson-dates-folders="0"]:not([data-lesson-dates-user="1"]) .mbn-material-row__aside > .mbn-course-card__badge,
.mbn-library[data-view="levels"][data-lesson-dates-levels="0"]:not([data-lesson-dates-user="1"]) .mbn-material-row__aside > .mbn-course-card__badge { display:none !important; }
@media(max-width:850px) {
 .mbn-date-desktop { display:none; }
 .mbn-date-mobile { display:inline; }
 .mbn-library[data-lesson-dates-mobile="0"]:not([data-lesson-dates-user="1"]) .mbn-material-row__aside > .mbn-course-card__badge { display:none !important; }
 .mbn-library:not(.is-measuring-toolbar-wrap) .mbn-library__toolbar,
 .mbn-library:not(.is-measuring-toolbar-wrap) .mbn-library__toolbar-left { flex-wrap:wrap; min-width:0; max-width:100%; }
 .mbn-library:not(.is-measuring-toolbar-wrap) .mbn-library__acc-tools { flex:0 1 auto; flex-wrap:wrap; min-width:0; max-width:100%; height:auto; }
 .mbn-library .mbn-library__acc-btn { max-width:100%; white-space:normal; height:auto; max-height:none; }
 .mbn-library .mbn-library__acc-btn .fi { flex-shrink:0; }
 .mbn-library:not(.is-measuring-toolbar-wrap) .mbn-library__collection-tumbler { min-width:0; max-width:100%; overflow:visible; }
 .mbn-library .mbn-library__collection-tumbler .mbn-library__collection-tab { flex:1 1 0; min-width:0; white-space:normal; overflow-wrap:break-word; padding-left:8px; padding-right:8px; }
 .mbn-library .mbn-library__collection-tab .mbn-library__tab-icon { flex-shrink:0; }
}

/* Clip the animated slider during resize without creating horizontal scrolling. */
.mbn-library .mbn-course-card__btn { box-sizing:border-box; }
@media(max-width:850px) {
 .mbn-library:not(.is-measuring-toolbar-wrap) .mbn-library__collection-tumbler { overflow:hidden; }
}

/* Content-sized tabs: the short All button must not reserve one third of a row. */
@media(max-width:850px) {
 .mbn-library:not(.is-measuring-toolbar-wrap) .mbn-library__collection-tumbler { flex-wrap:wrap; height:auto; max-height:none; }
 .mbn-library .mbn-library__collection-tumbler .mbn-library__collection-tab { flex:1 1 auto; min-width:min-content; max-width:100%; column-gap:5px; }
 .mbn-library .mbn-library__collection-tab > span:last-child { min-width:0; white-space:normal; overflow-wrap:anywhere; }
 .mbn-library[data-collection-mobile="vertical"] .mbn-library__collection-tumbler .mbn-library__collection-tab { flex:none; min-width:0; }
}

.mbn-library__control-row { display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; margin:10px 0; min-width:0; }
.mbn-library__control-row:not(:has(> :not([hidden]))) { display:none; }
.mbn-library__control-row > [data-mbn-panel-collection] { margin:0; padding:0; }
.mbn-library__control-row .mbn-library__theme-visibility,
.mbn-library__filter-row .mbn-library__theme-visibility { margin-left:0; }
.mbn-library__quick:not(:has(> button:not([data-mbn-quick-labels]):not([hidden]))) { display:none; }
/* State switches: same geometry and semantics for themes and lesson dates. */
.mbn-library .mbn-visibility-switch {
 appearance:none; display:inline-flex; align-items:center; gap:8px;
 border:0; border-radius:0; background:transparent; padding:0;
 font-size:var(--mbn-visibility-size,12px); font-weight:600; line-height:1.3;
 color:var(--mbn-visibility-off-label,#6b857c); opacity:1; cursor:pointer;
 max-width:100%; white-space:normal; box-shadow:none;
}
.mbn-library .mbn-visibility-switch[aria-checked="true"] { color:var(--mbn-visibility-on-label,#256c5a); }
.mbn-visibility-switch__label { min-width:0; text-align:left; }
.mbn-visibility-switch__track {
 display:block; position:relative; box-sizing:border-box; flex:none;
 width:var(--mbn-visibility-width,42px); height:var(--mbn-visibility-height,24px);
 background:var(--mbn-visibility-off-bg,#dfe6e3); border:1px solid transparent; border-radius:999px;
 transition:background-color .18s ease,border-color .18s ease;
}
.mbn-visibility-switch__thumb {
 position:absolute; display:flex; align-items:center; justify-content:center;
 left:2px; top:2px; width:calc(var(--mbn-visibility-height,24px) - 6px); height:calc(var(--mbn-visibility-height,24px) - 6px);
 background:var(--mbn-visibility-thumb-bg,#fff); color:var(--mbn-visibility-off-icon,#6b857c); border-radius:50%;
 box-shadow:0 1px 3px #0002; transition:transform .18s ease;
}
.mbn-visibility-switch__thumb i { font-size:12px; }
.mbn-visibility-switch[aria-checked="true"] .mbn-visibility-switch__track { background:var(--mbn-visibility-on-bg,#256c5a); }
.mbn-visibility-switch[aria-checked="true"] .mbn-visibility-switch__thumb {
 transform:translateX(calc(var(--mbn-visibility-width,42px) - var(--mbn-visibility-height,24px)));
 color:var(--mbn-visibility-on-icon,#256c5a);
}
.mbn-visibility-switch:hover .mbn-visibility-switch__track { border-color:var(--mbn-visibility-focus,#41a3af); }
.mbn-library .mbn-visibility-switch:focus:not(:focus-visible) { outline:none; }
.mbn-library .mbn-visibility-switch:focus-visible { outline:2px solid var(--mbn-visibility-focus,#41a3af); outline-offset:3px; }
@media(prefers-reduced-motion:reduce) {
 .mbn-visibility-switch__track,.mbn-visibility-switch__thumb { transition:none; }
}

/* Shared presentations for closed lessons, dates and themes. */
.mbn-library .mbn-control--badge { padding:4px 10px 4px 4px; min-height:var(--mbn-search-height,44px); box-sizing:border-box; gap:4px; font-size:var(--mbn-control-badge-label-size,14px); border:1px solid var(--mbn-control-badge-border); border-radius:var(--mbn-control-badge-radius); background:var(--mbn-control-badge-bg); }
.mbn-library .mbn-control--badge[aria-checked="true"] { background:var(--mbn-control-badge-on-bg); }
.mbn-library .mbn-control--badge:hover { background:var(--mbn-control-badge-hover-bg); }
.mbn-library .mbn-control--icon,.mbn-library .mbn-control--group { justify-content:center; padding:0; width:var(--mbn-control-icon-size,34px); height:var(--mbn-control-icon-size,34px); border-radius:50%; background:var(--mbn-control-icon-bg); }
.mbn-library .mbn-control--icon[aria-checked="true"],.mbn-library .mbn-control--group[aria-checked="true"] { background:var(--mbn-control-icon-on-bg); }
.mbn-library .mbn-control--icon:hover,.mbn-library .mbn-control--group:hover { background:var(--mbn-control-icon-hover-bg); }
.mbn-library .mbn-control--icon .mbn-visibility-switch__label,.mbn-library .mbn-control--group .mbn-visibility-switch__label { display:none; }
.mbn-library .mbn-control--badge .mbn-visibility-switch__track,.mbn-library .mbn-control--group .mbn-visibility-switch__track,.mbn-library .mbn-control--icon .mbn-visibility-switch__track { width:24px; height:24px; border:0; background:transparent; }
.mbn-library .mbn-control--badge .mbn-visibility-switch__thumb,.mbn-library .mbn-control--group .mbn-visibility-switch__thumb,.mbn-library .mbn-control--icon .mbn-visibility-switch__thumb { width:24px; height:24px; left:0; top:0; box-shadow:none; transform:none; background:transparent; }
.mbn-library .mbn-control--badge .mbn-visibility-switch__track,
.mbn-library .mbn-control--badge .mbn-visibility-switch__thumb { width:calc(var(--mbn-search-height,44px) - 10px); height:calc(var(--mbn-search-height,44px) - 10px); border-radius:50%; }
.mbn-library .mbn-control--badge .mbn-visibility-switch__thumb i,
.mbn-library .mbn-control--badge .mbn-visibility-switch__thumb i::before { font-size:15px; line-height:1; }
.mbn-library__quick > .mbn-visibility-switch { margin:0; }
.mbn-visibility-switch[data-control-hint] { position:relative; }
.mbn-visibility-switch[data-control-hint]::after { content:attr(data-control-hint); display:none; pointer-events:none; position:absolute; z-index:30; top:calc(100% + 6px); left:var(--mbn-hint-offset,0px); width:200px; box-sizing:border-box; padding:8px 10px; font-size:var(--mbn-control-hint-size,12px); font-weight:400; line-height:1.4; text-align:left; white-space:normal; background:var(--mbn-control-hint-bg,#1d3b34); color:var(--mbn-control-hint-color,#fff); border-radius:var(--mbn-control-hint-radius,8px); }
.mbn-visibility-switch[data-control-hint]:hover::after,.mbn-visibility-switch[data-control-hint]:focus-visible::after { display:block; }
/* Collection adaptation has its own configurable breakpoint, independent of lesson dates. */
.mbn-library.is-collection-narrow:not(.is-measuring-toolbar-wrap) .mbn-library__collection-tumbler { max-width:100%; min-width:0; flex-wrap:wrap; height:auto; max-height:none; overflow:hidden; }
.mbn-library.is-collection-narrow .mbn-library__collection-tumbler .mbn-library__collection-tab { flex:1 1 auto; min-width:min-content; max-width:100%; white-space:normal; padding-left:8px; padding-right:8px; }
.mbn-library.is-collection-narrow .mbn-library__collection-tab > span:last-child { min-width:0; overflow-wrap:anywhere; }
.mbn-library.is-collection-narrow[data-collection-mobile="icons"] .mbn-library__collection-tab:has(.mbn-library__tab-icon) > span:last-child { display:none; }
.mbn-library.is-collection-narrow[data-collection-mobile="vertical"] .mbn-library__collection-tumbler { flex-direction:column; border-radius:14px; }
.mbn-library.is-collection-narrow[data-collection-mobile="vertical"] .mbn-library__collection-tab { width:100%; flex:none; min-width:0; }
.mbn-library.is-collection-narrow[data-collection-mobile="vertical"] .mbn-library__collection-tumbler-slider { display:none; }
.mbn-library.is-collection-narrow[data-collection-mobile="all"] [data-mbn-collections] { display:none!important; }
.mbn-library:not(.is-collection-narrow):not(.is-measuring-toolbar-wrap) .mbn-library__collection-tumbler { flex-direction:row; flex-wrap:nowrap; min-height:var(--mbn-tumbler-min-height,36px); overflow:hidden; }
.mbn-library:not(.is-collection-narrow) .mbn-library__collection-tumbler .mbn-library__collection-tab { width:auto; min-width:var(--mbn-collection-option-min-width,90px); flex:1 1 auto; white-space:nowrap; padding:var(--mbn-tumbler-option-pad-y,6px) var(--mbn-tumbler-option-pad-x,12px); }
.mbn-library:not(.is-collection-narrow)[data-collection-mobile="icons"] .mbn-library__collection-tab > span:last-child { display:inline; }
.mbn-library:not(.is-collection-narrow)[data-collection-mobile="vertical"] .mbn-library__collection-tumbler-slider { display:block; }
.mbn-library:not(.is-collection-narrow)[data-collection-mobile="all"] [data-mbn-collections]:not([hidden]) { display:inline-flex!important; }

.mbn-library .mbn-visibility-switch[hidden] { display:none!important; }
.mbn-library__quick { max-width:100%; flex-wrap:wrap; box-sizing:border-box; }
.mbn-control-hint-example { display:inline-block; padding:8px 10px; border-radius:var(--mbn-control-hint-radius,8px); background:var(--mbn-control-hint-bg,#1d3b34); color:var(--mbn-control-hint-color,#fff); font-size:var(--mbn-control-hint-size,12px); }

.mbn-control-preview-row { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:12px 0; }

/* A narrow embedded library must remain usable even above the chosen viewport breakpoint. */
.mbn-library:not(.is-collection-narrow):not(.is-measuring-toolbar-wrap) .mbn-library__collection-tumbler { flex-wrap:wrap; height:auto; max-height:none; }
.mbn-library:not(.is-collection-narrow) .mbn-library__collection-tumbler .mbn-library__collection-tab { min-width:var(--mbn-collection-option-min-width,90px); max-width:100%; white-space:normal; }
.mbn-library:not(.is-collection-narrow) .mbn-library__collection-tab > span:last-child { min-width:0; white-space:normal; overflow-wrap:anywhere; }

/* Embedded icons share the established quick-filter capsule states. */
.mbn-library__quick > .mbn-control--group { background:transparent; }
.mbn-library__quick > .mbn-control--group[aria-checked="true"] { background:#fff; }

/* Keep the collection together; neighbouring controls wrap before its tabs do. */
.mbn-library:not(.is-measuring-toolbar-wrap) .mbn-library__collection-tumbler {
 flex:0 0 auto; width:max-content; max-width:100%;
}
.mbn-library .mbn-library__panel-row--collection { width:auto; max-width:100%; }
.mbn-library:not(.is-measuring-toolbar-wrap) .mbn-library__collection-tumbler .mbn-library__collection-tab { flex:0 0 auto; }
.mbn-library.mbn-library--collection-fill:not(.is-measuring-toolbar-wrap) .mbn-library__collection-tumbler {
 flex:1 0 auto; max-width:100%;
}
.mbn-library--collection-fill .mbn-library__panel-row--collection { width:100%; }
.mbn-library.mbn-library--collection-fill:not(.is-measuring-toolbar-wrap) .mbn-library__collection-tumbler .mbn-library__collection-tab { flex-grow:1; }

/* Library panel: one interaction language for equivalent controls. */
.mbn-library {
 --mbn-ui-hover-border:var(--mbn-search-border-hover,#9fbbb2);
 --mbn-ui-hover-bg:var(--mbn-control-quick-hover-bg,#dcece5);
 --mbn-ui-focus:var(--mbn-search-border-focus,var(--mbn-accent,#256c5a));
}
.mbn-library :is(.mbn-library__sort select,.mbn-library__themes-btn,.mbn-library__collection-tab,.mbn-library__view-option) { font-weight:600; }
.mbn-library :is(.mbn-library__active-chip,.mbn-library__theme-preset) { box-sizing:border-box; min-height:34px; line-height:1.3; }
.mbn-library :is(.mbn-library__themes-btn,.mbn-library__theme-preset,.mbn-library__collection-tab,.mbn-library__view-option) :is(i,i::before) { font-size:15px; line-height:1; }
.mbn-library :is(.mbn-library__theme-preset:not(.is-active),.mbn-library__collection-tab:not(.is-active),.mbn-library__view-option:not(.is-active)):hover { background:var(--mbn-ui-hover-bg) !important; }
.mbn-library .mbn-library__theme-preset:hover { border-color:var(--mbn-ui-hover-border); }
.mbn-library :is(.mbn-library__refresh,.mbn-library__acc-btn,.mbn-library__themes-btn,.mbn-library__quick-btn,.mbn-visibility-switch,.mbn-library__theme-preset,.mbn-library__collection-tab,.mbn-library__view-option,.mbn-library__active-chip-open,.mbn-library__active-chip-remove):focus-visible {
 outline:none; border-color:var(--mbn-ui-focus); box-shadow:0 0 0 3px var(--mbn-search-focus-ring,rgba(37,108,90,.18));
}
.mbn-library :is(.mbn-library__refresh,.mbn-library__acc-btn,.mbn-library__themes-btn,.mbn-library__quick-btn,.mbn-visibility-switch,.mbn-library__theme-preset,.mbn-library__collection-tab,.mbn-library__view-option):focus:not(:focus-visible) { outline:none; }

.mbn-library :is(.mbn-library__refresh,.mbn-library__acc-btn,.mbn-control--group,.mbn-control--icon) :is(i,i::before) { font-size:15px; line-height:1; }

/* Compact quick filters may reveal their labels without duplicating chips. */
.mbn-library :is(.mbn-library__panel-row,.mbn-library__toolbar,.mbn-library__toolbar-left,.mbn-library__acc-tools,.mbn-library__filter-row,.mbn-library__control-row,.mbn-library__active-chips,.mbn-library__theme-presets,.mbn-library__themes-bar,.mbn-library__quick) { gap:8px; }
.mbn-library :is(.mbn-library__refresh,.mbn-library__acc-btn) { gap:8px; }
.mbn-quick-label { display:none; }
.mbn-library .mbn-library__quick-labels { display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; flex:none; padding:0; border:0; border-radius:50%; background:transparent; color:var(--mbn-muted,#6b857c); cursor:pointer; }
.mbn-library .mbn-library__quick-labels:hover { background:var(--mbn-control-quick-hover-bg,#dcece5); }
.mbn-library .mbn-library__quick-labels[aria-expanded="true"] { background:#fff; color:var(--mbn-accent,#256c5a); }
.mbn-library .mbn-library__quick.is-labels-expanded { height:auto; min-height:var(--mbn-search-height,44px); }
.mbn-library .mbn-library__quick.is-labels-expanded :is(.mbn-library__quick-btn,.mbn-control--group) { width:auto; max-width:100%; border-radius:999px; padding:0 12px; gap:8px; font-size:14px; font-weight:600; }
.mbn-library .mbn-library__quick.is-labels-expanded :is(.mbn-quick-label,.mbn-visibility-switch__label) { display:inline; }
.mbn-library .mbn-library__filters-reset { display:inline-flex; align-items:center; gap:8px; min-height:34px; padding:6px 10px; border:1px solid var(--mbn-chip-border,#e3ebe7); border-radius:var(--mbn-chip-radius,999px); background:#fff; color:var(--mbn-chip-color,#1d3b34); font-size:var(--mbn-chip-size,14px); font-weight:600; cursor:pointer; }
.mbn-library .mbn-library__filters-reset:hover { border-color:var(--mbn-ui-hover-border,#9fbbb2); background:var(--mbn-ui-hover-bg,#dcece5); }
.mbn-library .mbn-library__filters-reset[hidden] { display:none!important; }
.mbn-library :is(.mbn-library__filters-reset,.mbn-library__quick-labels):focus-visible { outline:2px solid var(--mbn-ui-focus,#256c5a); outline-offset:2px; }
.mbn-library .mbn-recent__closed-control { margin:0 0 8px; }

.mbn-library .mbn-library__quick-labels i { font-size:15px; line-height:1; }

/* Expanded slices use a plain, equal glyph slot rather than the circular-control shell. */
.mbn-library .mbn-library__quick.is-labels-expanded .mbn-library__quick-btn > i,
.mbn-library .mbn-library__quick.is-labels-expanded .mbn-control--group .mbn-visibility-switch__track,
.mbn-library .mbn-library__quick.is-labels-expanded .mbn-control--group .mbn-visibility-switch__thumb {
 position:static; display:inline-flex; align-items:center; justify-content:center; flex:0 0 15px;
 width:15px; height:15px; margin:0; padding:0; border:0; border-radius:0;
 background:transparent; box-shadow:none; transform:none;
}
.mbn-library .mbn-library__quick.is-labels-expanded .mbn-library__quick-btn i,
.mbn-library .mbn-library__quick.is-labels-expanded .mbn-library__quick-btn i::before { font-size:15px; line-height:1; }

/* Nested radii keep wrapped controls inside the track: inner radius + inset + border. */
.mbn-library {
 --mbn-tumbler-inner-radius:min(var(--mbn-tumbler-option-radius,999px),calc(var(--mbn-tumbler-min-height,44px) / 2 - var(--mbn-tumbler-track-pad,4px) - 1px));
 --mbn-tumbler-outer-radius:calc(var(--mbn-tumbler-inner-radius) + var(--mbn-tumbler-track-pad,4px) + 1px);
 --mbn-quick-inner-radius:min(var(--mbn-tumbler-option-radius,999px),calc((var(--mbn-search-height,44px) - 10px) / 2));
}
.mbn-library .mbn-library__quick { border-radius:calc(var(--mbn-quick-inner-radius) + 5px); }
.mbn-library .mbn-library__quick :is(.mbn-library__quick-btn,.mbn-library__quick-labels),
.mbn-library .mbn-library__quick.is-labels-expanded :is(.mbn-library__quick-btn,.mbn-control--group) { border-radius:var(--mbn-quick-inner-radius); }
.mbn-library .mbn-library__collection-tumbler,
.mbn-library .mbn-library__view-tumbler,
.mbn-library.is-collection-narrow[data-collection-mobile="vertical"] .mbn-library__collection-tumbler { border-radius:var(--mbn-tumbler-outer-radius); }
.mbn-library :is(.mbn-library__collection-tab,.mbn-library__view-option,.mbn-library__collection-tumbler-slider,.mbn-library__view-tumbler-slider) { border-radius:var(--mbn-tumbler-inner-radius); }
.mbn-page-switcher { --mbn-page-inner-radius:min(var(--mbn-tumbler-option-radius,999px),21px); border-radius:calc(var(--mbn-page-inner-radius) + 6px); }
.mbn-page-switcher :is(.mbn-page-switcher__option,.mbn-page-switcher__slider) { border-radius:var(--mbn-page-inner-radius); }
.mbn-page-switcher .mbn-page-switcher__option:not(.is-active):hover { background:var(--mbn-tumbler-hover-bg,#dcece5) !important; }
.mbn-library :is(.mbn-library__collection-tab,.mbn-library__view-option):not(.is-active):hover { background:var(--mbn-tumbler-hover-bg,#dcece5) !important; }
/* Theme search uses the same editable field design as material search. */
.mbn-library .mbn-library__theme-search,
#mbn-library-styles-preview .mbn-library__theme-search {
 appearance:none; height:var(--mbn-search-height,44px); min-height:var(--mbn-search-height,44px);
 border:1px solid var(--mbn-search-border,#e3ebe7); border-radius:var(--mbn-search-radius,10px);
 background:var(--mbn-search-bg,#fff); color:var(--mbn-search-color,#1d3b34);
 font-size:var(--mbn-search-size,16px); font-weight:400; line-height:1.3; padding:0 36px 0 12px; outline:none; box-shadow:none;
}
.mbn-library .mbn-library__theme-search::placeholder { color:var(--mbn-search-placeholder,#7a948c); }
.mbn-library .mbn-library__theme-search:hover,
#mbn-library-styles-preview .mbn-library__theme-search:hover { border-color:var(--mbn-search-border-hover,#9fbbb2); }
.mbn-library .mbn-library__theme-search:focus,
#mbn-library-styles-preview .mbn-library__theme-search:focus { border-color:var(--mbn-search-border-focus,#256c5a); box-shadow:0 0 0 3px var(--mbn-search-focus-ring,rgba(37,108,90,.18)); }
.mbn-library .mbn-library__filters-reset i { font-size:15px; line-height:1; }

/* Standalone icon controls share the panel label toggle and interaction cues. */
.mbn-library .mbn-control--icon { box-sizing:border-box; border:1px solid var(--mbn-border,#e3ebe7); flex-shrink:0; }
.mbn-library .mbn-control--icon[aria-checked="true"] { box-shadow:0 1px 3px rgba(29,59,52,.16); }
.mbn-library .mbn-control--icon:hover { border-color:var(--mbn-control-quick-hover-border,#8db4a4); }
.mbn-library.is-control-labels-expanded .mbn-control--icon { width:auto; max-width:100%; padding:0 12px; gap:8px; border-radius:999px; font-size:14px; font-weight:600; }
.mbn-library.is-control-labels-expanded .mbn-control--icon .mbn-visibility-switch__label { display:inline; }
.mbn-library.is-control-labels-expanded .mbn-control--icon :is(.mbn-visibility-switch__track,.mbn-visibility-switch__thumb) { width:15px; height:15px; flex:0 0 15px; }

/* One state palette for list filters and visibility buttons. */
.mbn-library :is(.mbn-library__quick-btn,.mbn-control--group,.mbn-control--icon) {
 background:var(--mbn-control-icon-bg,#f0f5f3); color:var(--mbn-control-off-color,#6b857c); border:1px solid var(--mbn-control-off-border,#e3ebe7); box-shadow:none;
}
.mbn-library :is(.mbn-library__quick-btn,.mbn-control--group,.mbn-control--icon):is(.is-on,[aria-pressed="true"],[aria-checked="true"]) {
 background:var(--mbn-control-icon-on-bg,#fff); color:var(--mbn-control-on-color,#256c5a); border-color:var(--mbn-control-on-border,#e3ebe7); box-shadow:0 1px 3px rgba(29,59,52,var(--mbn-control-on-shadow,.12));
}
.mbn-library :is(.mbn-library__quick-btn,.mbn-control--group,.mbn-control--icon):hover {
 background:var(--mbn-control-quick-hover-bg,#dcece5); color:var(--mbn-control-hover-color,#1d3b34); border-color:var(--mbn-control-quick-hover-border,#9fbbb2);
}
/* Badge: steady panel with caption, state styling belongs to the icon circle. */
.mbn-library .mbn-control--badge,
.mbn-library .mbn-control--badge[aria-checked="true"],
.mbn-library .mbn-control--badge:hover {
 background:var(--mbn-tumbler-track,#f0f5f3); border:1px solid var(--mbn-border,#e3ebe7); box-shadow:none; color:var(--mbn-control-off-color,#6b857c);
}
.mbn-library .mbn-control--badge[aria-checked="true"] { color:var(--mbn-control-on-color,#256c5a); }
.mbn-library .mbn-control--badge:hover { color:var(--mbn-control-hover-color,#1d3b34); }
.mbn-library .mbn-control--badge .mbn-visibility-switch__track { background:transparent; border:0; }
.mbn-library .mbn-control--badge .mbn-visibility-switch__thumb {
 box-sizing:border-box; background:var(--mbn-control-icon-bg,#f0f5f3); border:1px solid var(--mbn-control-off-border,#e3ebe7); color:inherit; box-shadow:none;
}
.mbn-library .mbn-control--badge[aria-checked="true"] .mbn-visibility-switch__thumb {
 background:var(--mbn-control-icon-on-bg,#fff); border-color:var(--mbn-control-on-border,#e3ebe7); color:inherit; box-shadow:0 1px 3px rgba(29,59,52,var(--mbn-control-on-shadow,.12));
}
.mbn-library .mbn-control--badge:hover .mbn-visibility-switch__thumb {
 background:var(--mbn-control-quick-hover-bg,#dcece5); border-color:var(--mbn-control-quick-hover-border,#9fbbb2); color:inherit;
}
.mbn-library .mbn-control--group :is(.mbn-visibility-switch__track,.mbn-visibility-switch__thumb),
.mbn-library .mbn-control--icon :is(.mbn-visibility-switch__track,.mbn-visibility-switch__thumb) { color:inherit; }
/* Preserve the separately configured favorite and bookmark colors. */
.mbn-library .mbn-library__quick-btn[data-mbn-quick="star"].is-on { color:var(--mbn-mark-star-on,#d4a017); }
.mbn-library .mbn-library__quick-btn[data-mbn-quick="bookmark"].is-on { color:var(--mbn-mark-bookmark-on,#41A3AF); }
.mbn-library .mbn-library__switches[hidden] { display:none; }

/* In a shared capsule, the inactive outline belongs to the capsule only. */
.mbn-library .mbn-library__quick > :is(.mbn-library__quick-btn,.mbn-control--group):not(.is-on):not([aria-pressed="true"]):not([aria-checked="true"]):not(:hover) {
 border-color:transparent;
}
