:root {
    --lms-prog-primary: #006786;
    --lms-prog-visited: #94a3b8;
    --lms-prog-current: #f97316;
    --lms-prog-unpublished: #94a3b8;
    --lms-prog-guest-border: #cbd5e1;
    --lms-prog-guest-text: #64748b;
}

.mod-lms-progress {
    padding: 0;
    margin: 0;
    background: transparent;
    border: none;
    font-size: 0.95rem;
}

.mod-lms-progress__header {
    display: flex;
    justify-content: space-between;
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.mod-lms-progress__percent {
    color: var(--lms-prog-primary);
}

.mod-lms-progress__bar-container {
    width: 100%;
    height: 8px;
    background: #e2e8f0;
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 0.75rem;
}

.mod-lms-progress__bar-fill {
    height: 100%;
    background: var(--lms-prog-primary);
    transition: width 0.3s ease;
}

.mod-lms-progress__stats {
    font-size: 0.85rem;
    color: #64748b;
    margin-bottom: 1rem;
}

.mod-lms-progress__list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.mod-lms-progress__item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.75rem;
    padding: 0.65rem 0.75rem;
    background: #fff;
    border-radius: 6px;
    box-sizing: border-box;
}

/* Элемент в гостевом режиме: нейтральная серая рамка */
.mod-lms-progress__item--guest {
    border: 1px solid var(--lms-prog-guest-border);
    background: #f8fafc;
}

/* Опубликованные, но не открытые */
.mod-lms-progress__item--unvisited {
    border: 1px solid #006786;
}

/* Опубликованные и просмотренные */
.mod-lms-progress__item--visited {
    border: 1px solid var(--lms-prog-visited);
}

/* Текущий открытый материал */
.mod-lms-progress__item--current {
    border: 2px solid var(--lms-prog-current);
}

/* Неопубликованные задания */
.mod-lms-progress__item--unpublished {
    border: 1px dotted var(--lms-prog-unpublished);
    background: transparent;
}

.mod-lms-progress__info {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 0;
    flex: 1;
}

.mod-lms-progress__link {
    color: #1e293b;
    font-weight: 500;
    text-decoration: none;
    word-break: break-word;
}

.mod-lms-progress__link:hover {
    color: var(--lms-prog-primary);
    text-decoration: underline;
}

.mod-lms-progress__title-unpublished {
    color: #94a3b8;
    font-weight: 500;
    word-break: break-word;
}

/* Название для гостей: серый цвет, без оформления ссылки */
.mod-lms-progress__title-guest {
    color: var(--lms-prog-guest-text);
    font-weight: 500;
    word-break: break-word;
}

.mod-lms-progress__date {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.78rem;
    color: #64748b;
    line-height: 1.2;
}

.mod-lms-progress__item--unpublished .mod-lms-progress__date,
.mod-lms-progress__item--guest .mod-lms-progress__date {
    color: #94a3b8;
}

.mod-lms-progress__clock {
    font-size: 0.82rem;
    line-height: 1;
}

.mod-lms-progress__status {
    flex-shrink: 0;
}

.lms-prog-badge {
    display: inline-block;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.2rem 0.5rem;
    border-radius: 999px;
    white-space: nowrap;
}

.lms-prog-badge--none { background: #e2e8f0; color: #475569; }
.lms-prog-badge--pending { background: #fef9c3; color: #854d0e; }
.lms-prog-badge--accepted { background: #dcfce7; color: #166534; }
.lms-prog-badge--rejected { background: #fee2e2; color: #991b1b; }
