.course-shell {
    --course-ink: #111827;
    --course-muted: #667085;
    --course-line: #dbe7f3;
    --course-line-soft: #e9f1f8;
    --course-surface: #ffffff;
    --course-surface-soft: #f8fbff;
    --course-blue: #2f80d1;
    --course-blue-deep: #1f68b2;
    --course-blue-soft: #eaf5ff;
    --course-blue-tint: #f4f9ff;
    --course-green: #24a474;
    --course-green-soft: #edf9f4;
    --course-amber: #d18a24;
    --course-amber-soft: #fff7e8;
    color: var(--course-ink);
}

.course-shell .text-gray-900 {
    color: var(--course-ink) !important;
}

.course-shell .text-gray-700,
.course-shell .text-gray-600,
.course-shell .text-gray-500 {
    color: var(--course-muted) !important;
}

.course-shell .text-blue-600,
.course-shell .text-blue-700,
.course-shell .group:hover .group-hover\:text-blue-600 {
    color: var(--course-blue) !important;
}

.course-shell .bg-blue-600 {
    background-color: var(--course-blue) !important;
}

.course-shell .hover\:bg-blue-700:hover,
.course-shell .group:hover .group-hover\:bg-blue-600 {
    background-color: var(--course-blue-deep) !important;
}

.course-shell .bg-blue-50,
.course-shell .bg-blue-50\/40,
.course-shell .bg-blue-50\/50,
.course-shell .hover\:bg-blue-50\/40:hover {
    background-color: var(--course-blue-tint) !important;
}

.course-shell .border-blue-100,
.course-shell .border-blue-200,
.course-shell .border-gray-200,
.course-shell .border-gray-100 {
    border-color: var(--course-line) !important;
}

.course-shell .ring-blue-300 {
    --tw-ring-color: rgba(47, 128, 209, 0.24) !important;
}

.course-shell .shadow-sm {
    box-shadow: 0 1px 2px rgba(17, 24, 39, 0.035), 0 12px 30px rgba(47, 128, 209, 0.055) !important;
}

.course-shell .hover\:shadow-md:hover {
    box-shadow: 0 14px 34px rgba(47, 128, 209, 0.12), 0 1px 2px rgba(17, 24, 39, 0.045) !important;
}

.course-shell .bg-gray-50,
.course-shell .bg-gray-100 {
    background-color: var(--course-surface-soft) !important;
}

.course-shell .bg-slate-500 {
    background-color: #8b98a8 !important;
}

.course-shell .bg-green-500 {
    background-color: var(--course-green) !important;
}

.course-shell .text-green-500 {
    color: var(--course-green) !important;
}

.course-shell .text-green-600,
.course-shell .text-green-700 {
    color: var(--course-green) !important;
}

.course-shell .bg-green-50 {
    background-color: var(--course-green-soft) !important;
}

.course-shell .border-green-200 {
    border-color: #ccebdd !important;
}

.course-shell .bg-amber-50 {
    background-color: var(--course-amber-soft) !important;
}

.course-shell .bg-amber-500 {
    background-color: var(--course-amber) !important;
}

.course-shell .hover\:bg-amber-600:hover {
    background-color: #b8741d !important;
}

.course-shell .text-amber-700 {
    color: #a66a19 !important;
}

.course-shell .border-amber-200 {
    border-color: #f2d9ad !important;
}

.course-shell .bg-emerald-500 {
    background-color: #1fa37a !important;
}

.course-shell .bg-emerald-50 {
    background-color: #effbf6 !important;
}

.course-shell .text-emerald-700 {
    color: #12805f !important;
}

.course-shell .bg-violet-500 {
    background-color: #7c6ed6 !important;
}

.course-shell .bg-violet-50 {
    background-color: #f5f3ff !important;
}

.course-shell .text-violet-700 {
    color: #6759bd !important;
}

.course-shell .bg-rose-500 {
    background-color: #d46a86 !important;
}

.course-shell .bg-rose-50 {
    background-color: #fff2f5 !important;
}

.course-shell .text-rose-700 {
    color: #b84f6c !important;
}

.course-shell .bg-cyan-500 {
    background-color: #23a4c7 !important;
}

.course-shell .bg-cyan-50 {
    background-color: #eefbff !important;
}

.course-shell .text-cyan-700 {
    color: #15819f !important;
}

.course-shell a[class*="border"],
.course-shell section > div[class*="border"],
.course-shell [data-next-card],
.course-shell [data-topic-card],
.course-shell [data-subtopic-row] {
    border-color: var(--course-line-soft) !important;
}

.course-shell [data-topic-card],
.course-shell [data-subtopic-row] {
    transition: background-color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease, color 180ms ease;
}

.course-shell [data-topic-card]:hover,
.course-shell [data-subtopic-row]:hover {
    background-color: #f8fbff !important;
    border-color: #c9def1 !important;
}

.course-shell [data-action-label],
.course-shell [data-topic-action-label] {
    border-color: #b9d8f3 !important;
    color: var(--course-blue) !important;
}

.course-shell .group:hover [data-action-label],
.course-shell .group:hover [data-topic-action-label] {
    color: #ffffff !important;
}

.course-shell .group:hover .group-hover\:text-white {
    color: #ffffff !important;
}

.course-shell [data-progress-bar],
.course-shell [data-topic-progress-bar] {
    background-color: var(--course-blue) !important;
}

.course-shell svg {
    stroke-linecap: round;
    stroke-linejoin: round;
}
