/**
 * Uno LMS — course-player-lessons child block.
 *
 * Default panel surface is white (`#fff`); block Color → Background in the
 * editor still overrides via higher-specificity / inline styles. `color`
 * inherits for section-style text on children.
 *
 * Cosmetic roots use :where() so theme + user overrides win without !important.
 * Layout inside `.uno-lms-course-player__layout` uses normal specificity so
 * generic `aside` rules do not disable the scroll column.
 */
:where(.wp-block-uno-lms-course-player-lessons) {
    box-sizing: border-box;
    background-color: #fff;
    color: inherit;
    padding: 0;
}

@media (min-width: 901px) {
    .wp-block-uno-lms-course-player .uno-lms-course-player__layout .wp-block-uno-lms-course-player-lessons {
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        max-height: calc((100cqw - var(--uno-lms-course-player-lessons-width, 420px)) * 9 / 16);
        min-height: 0;
        height: 100%;
        overflow: hidden;
    }

    .wp-block-uno-lms-course-player .uno-lms-course-player__layout .wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__header,
    .wp-block-uno-lms-course-player .uno-lms-course-player__layout .wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__title {
        flex-shrink: 0;
    }

    .wp-block-uno-lms-course-player .uno-lms-course-player__layout .wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__list {
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
        flex: 1 1 auto;
        min-height: 0;
        overflow-y: scroll;
        overflow-x: hidden;
        scrollbar-gutter: stable;
        scrollbar-color: var(--wp--custom--uno-lms--text--muted, var(--wp--preset--color--contrast-2, #525960)) var(--wp--custom--uno-lms--surface--border-color, var(--wp--preset--color--contrast-3, #d0d7de));
    }

    .wp-block-uno-lms-course-player .uno-lms-course-player__layout .wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__empty {
        flex-shrink: 0;
    }
}

/*
 * Mobile / narrow: cap lesson list height so long courses scroll inside the panel
 * (desktop uses flex + column max-height instead).
 */
@media (max-width: 900px) {
    .wp-block-uno-lms-course-player .uno-lms-course-player__layout .wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__list {
        max-height: 420px;
        overflow-y: auto;
        overflow-x: hidden;
        scrollbar-gutter: stable;
        scrollbar-color: var(--wp--custom--uno-lms--text--muted, var(--wp--preset--color--contrast-2, #525960)) var(--wp--custom--uno-lms--surface--border-color, var(--wp--preset--color--contrast-3, #d0d7de));
    }
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__header {
    display: flex;
    align-items: center;
    gap: var(--wp--preset--spacing--20, 0.75rem);
    min-width: 0;
    padding: var(--wp--preset--spacing--20, 0.75rem) var(--wp--preset--spacing--30, 1rem);
    /* 5px track reserved for course completion percentage UI */
    border-bottom: 5px solid var(--wp--custom--uno-lms--surface--border-color, var(--wp--preset--color--contrast-3, #d0d7de));
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__title {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
    color: var(--uno-lms-course-player-lessons-heading-color, inherit);
    font-size: var(--uno-lms-course-player-lessons-heading-font-size, inherit);
    font-weight: var(--uno-lms-course-player-lessons-heading-font-weight, inherit);
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__search {
    display: flex;
    flex: 0 0 auto;
    flex-direction: row-reverse;
    align-items: center;
    justify-content: flex-start;
    inline-size: 2rem;
    max-inline-size: min(16rem, 70%);
    min-width: 0;
    overflow: hidden;
    color: inherit;
    transition: inline-size 180ms ease;
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__search.is-search-open {
    inline-size: min(16rem, 70%);
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__search-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    inline-size: 2rem;
    block-size: 2rem;
    box-sizing: border-box;
    border: 1px solid transparent;
    border-radius: var(
        --uno-lms-course-player-lessons-button-radius,
        var(--wp--style--global--border--radius, var(--wp--preset--radius--medium, 8px))
    );
    background: transparent;
    color: inherit;
    cursor: pointer;
    outline: 0;
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__search-toggle:focus-visible {
    /* Match selected lesson row (`is-active`): thin accent border + subtle fill, no extra ring. */
    border-color: var(--wp--custom--uno-lms--focus--ring-color, var(--wp--preset--color--accent, #3858e9));
    background: color-mix(in srgb, currentColor 5%, transparent);
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__search-toggle:hover {
    background: color-mix(in srgb, currentColor 4%, transparent);
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__search-icon {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    color: inherit;
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__search-icon .uno-lms-badge__icon svg {
    inline-size: 20px;
    block-size: 20px;
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__search-input {
    box-sizing: border-box;
    flex: 1 1 auto;
    inline-size: 0;
    min-inline-size: 0;
    border: 1px solid var(--wp--custom--uno-lms--surface--border-color, var(--wp--preset--color--contrast-3, #d0d7de));
    border-radius: var(
        --uno-lms-course-player-lessons-button-radius,
        var(--wp--style--global--border--radius, var(--wp--preset--radius--medium, 8px))
    );
    background: #fff;
    color: var(--wp--preset--color--contrast, #1e1e1e);
    font: inherit;
    font-size: 0.875rem;
    opacity: 0;
    outline: 0;
    padding: 0.4rem 0.6rem;
    transition: inline-size 180ms ease, opacity 120ms ease;
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__search-input::placeholder {
    color: var(--wp--custom--uno-lms--text--muted, var(--wp--preset--color--contrast-2, #525960));
    opacity: 1;
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__search.is-search-open .uno-lms-course-player-lessons__search-input {
    inline-size: 100%;
    opacity: 1;
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__search-input:focus-visible {
    border-color: var(--wp--custom--uno-lms--focus--ring-color, var(--wp--preset--color--accent, #3858e9));
    background: #fff;
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__list {
    list-style: none;
    margin: 0;
    padding: var(--wp--preset--spacing--20, 0.75rem) var(--wp--preset--spacing--30, 1rem) var(--wp--preset--spacing--20, 0.75rem) var(--wp--preset--spacing--30, 1rem);
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__button {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    text-align: left;
    font: inherit;
    font-size: 0.875rem;
    border: 1px solid var(--wp--custom--uno-lms--surface--border-color, var(--wp--preset--color--contrast-3, #d0d7de));
    border-radius: var(
        --uno-lms-course-player-lessons-button-radius,
        var(--wp--style--global--border--radius, var(--wp--preset--radius--medium, 8px))
    );
    background: transparent;
    color: inherit;
    padding: 0.75rem;
    cursor: pointer;
    outline: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__button.is-active {
    border-color: var(--wp--custom--uno-lms--focus--ring-color, var(--wp--preset--color--accent, #3858e9));
    background: color-mix(in srgb, currentColor 5%, transparent);
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__button:focus-visible {
    border-color: var(--wp--custom--uno-lms--focus--ring-color, var(--wp--preset--color--accent, #3858e9));
    box-shadow: inset 0 0 0 calc(var(--wp--custom--uno-lms--focus--ring-width, 1px) * 2) var(--wp--custom--uno-lms--focus--ring-color, var(--wp--preset--color--accent, #3858e9));
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__button:hover {
    background: color-mix(in srgb, currentColor 4%, transparent);
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__button.is-locked {
    opacity: 0.85;
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__label {
    display: block;
    min-width: 0;
    font-weight: inherit;
    font-style: inherit;
    overflow-wrap: anywhere;
}

.wp-block-uno-lms-course-player-lessons .uno-lms-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    padding: 0.1rem 0.4rem;
    border-radius: 10em;
}

.wp-block-uno-lms-course-player-lessons .uno-lms-badge__icon svg {
    display: block;
    flex-shrink: 0;
}

.wp-block-uno-lms-course-player-lessons .uno-lms-badge__text {
    line-height: 1.2;
}

.wp-block-uno-lms-course-player-lessons .uno-lms-badge--access-locked {
    background: var(
        --wp--custom--uno-lms--badge--access-locked--background,
        color-mix(in srgb, currentColor 10%, transparent)
    );
    color: var(--wp--custom--uno-lms--badge--access-locked--color, inherit);
}

.wp-block-uno-lms-course-player-lessons .uno-lms-badge--access-preview {
    background: var(
        --wp--custom--uno-lms--badge--access-preview--background,
        color-mix(in srgb, currentColor 10%, transparent)
    );
    color: var(--wp--custom--uno-lms--badge--access-preview--color, inherit);
}

.wp-block-uno-lms-course-player-lessons .uno-lms-badge--visibility-draft {
    background: var(
        --wp--custom--uno-lms--badge--visibility-draft--background,
        color-mix(in srgb, currentColor 8%, transparent)
    );
    color: var(
        --wp--custom--uno-lms--badge--visibility-draft--color,
        var(--wp--custom--uno-lms--text--muted, var(--wp--preset--color--contrast-2, #525960))
    );
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__empty {
    margin: 0;
    color: var(--wp--custom--uno-lms--text--muted, var(--wp--preset--color--contrast-2, #525960));
}

.wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__search-empty {
    margin: 0;
    padding: var(--wp--preset--spacing--20, 0.75rem) var(--wp--preset--spacing--30, 1rem);
    color: var(--wp--custom--uno-lms--text--muted, var(--wp--preset--color--contrast-2, #525960));
}

@media (prefers-reduced-motion: reduce) {
    .wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__search,
    .wp-block-uno-lms-course-player-lessons .uno-lms-course-player-lessons__search-input {
        transition: none;
    }
}

.wp-block-uno-lms-course-player-lessons .screen-reader-text {
    position: absolute !important;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    width: 1px;
    height: 1px;
    overflow: hidden;
    word-wrap: normal !important;
}
