/* ==========================================================================
   LearnDash Modern Theme Overrides
   Targets the LD30 modern variation's BEM-style classes.
   Uses body prefix + !important to beat LearnDash's `all: unset` resets.
   ========================================================================== */

/* ---------------------------------------------------------------------------
   Global wrapper — fonts & color
   --------------------------------------------------------------------------- */
body .learndash-wrapper {
    font-family: var(--font-sans) !important;
    color: var(--color-secondary) !important;
}

/* Let font-family cascade naturally — specific elements override below */

/* ---------------------------------------------------------------------------
   Layout — tighten the grid, remove excess spacing
   --------------------------------------------------------------------------- */
body .learndash-wrapper .ld-layout {
    gap: 1.5rem !important;
}

body .learndash-wrapper .ld-layout__header {
    gap: 1rem !important;
}

body .learndash-wrapper .ld-layout__content {
    gap: 1.5rem !important;
}

/* ---------------------------------------------------------------------------
   Progress bar area (LESSON COMPLETE / Last activity)
   --------------------------------------------------------------------------- */
body .learndash-wrapper .ld-progress-bar {
    gap: 0.5rem !important;
}

body .learndash-wrapper .ld-progress-bar__label,
body .learndash-wrapper .ld-progress-bar__meter-percentage,
body .learndash-wrapper .ld-progress-bar__meter-label,
body .learndash-wrapper .ld-progress-bar__last-activity {
    font-family: var(--font-heading) !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    color: var(--color-gray-5) !important;
}

body .learndash-wrapper .ld-progress-bar__label-icon {
    height: 20px !important;
    width: 20px !important;
}

body .learndash-wrapper .ld-progress-bar__label-icon--complete {
    color: #22c55e !important;
}

body .learndash-wrapper .ld-progress-bar__meter-foreground {
    background: var(--color-primary) !important;
    border-radius: 9999px !important;
}

body .learndash-wrapper .ld-progress-bar__meter-background {
    background: var(--color-gray-2) !important;
    border-radius: 9999px !important;
    height: 6px !important;
}

/* ---------------------------------------------------------------------------
   Alerts (modern) — clean up the status messages
   --------------------------------------------------------------------------- */
body .learndash-wrapper .ld-alert.ld-alert--modern {
    border: none !important;
    border-radius: 0.5rem !important;
    padding: 0.75rem 1rem !important;
    font-family: var(--font-sans) !important;
    font-size: 0.875rem !important;
}

body .learndash-wrapper .ld-alert.ld-alert--modern.ld-alert--info {
    background-color: #f0fdf4 !important;
    border: 1px solid #bbf7d0 !important;
    color: #166534 !important;
}

body .learndash-wrapper .ld-alert.ld-alert--modern.ld-alert--warning {
    background-color: #fffbeb !important;
    border: 1px solid #fde68a !important;
    color: #92400e !important;
}

body .learndash-wrapper .ld-alert.ld-alert--modern.ld-alert--error {
    background-color: #fef2f2 !important;
    border: 1px solid #fecaca !important;
    color: #991b1b !important;
}

body .learndash-wrapper .ld-alert__icon {
    background: none !important;
    margin: 0 !important;
}

body .learndash-wrapper .ld-alert__icon--info {
    color: #22c55e !important;
    background: none !important;
}

body .learndash-wrapper .ld-alert__content {
    font-family: var(--font-sans) !important;
}

body .learndash-wrapper .ld-alert__message {
    font-size: 0.875rem !important;
    color: inherit !important;
}

/* ---------------------------------------------------------------------------
   Navigation bar (Prev / Mark Complete / Next / Back to Course)
   --------------------------------------------------------------------------- */
body .learndash-wrapper .ld-navigation {
    padding: 2rem 0 0 !important;
    margin-top: 1rem !important;
    border-top: 1px solid var(--color-gray-3) !important;
    gap: 1rem 1rem !important;
}

/* Hide bottom standalone "Back to Course" — breadcrumbs already link back */
body .learndash-wrapper .ld-navigation__back-to-course {
    display: none !important;
}

/* --- Previous & Back to Course: text-style link buttons --- */
body .learndash-wrapper .ld-navigation__previous-link,
body .learndash-wrapper .ld-navigation__previous-link:active,
body .learndash-wrapper .ld-navigation__previous-link:focus,
body .learndash-wrapper .ld-navigation__previous-link:hover,
body .learndash-wrapper .ld-navigation__back-to-course-link,
body .learndash-wrapper .ld-navigation__back-to-course-link:active,
body .learndash-wrapper .ld-navigation__back-to-course-link:focus,
body .learndash-wrapper .ld-navigation__back-to-course-link:hover {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    color: var(--color-secondary) !important;
    font-family: var(--font-heading) !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    padding: 0.5rem 0 !important;
    box-shadow: none !important;
    text-decoration: none !important;
    border-radius: 0 !important;
}

body .learndash-wrapper .ld-navigation__previous-link:hover,
body .learndash-wrapper .ld-navigation__back-to-course-link:hover {
    color: var(--color-primary) !important;
    background: transparent !important;
    background-color: transparent !important;
}

/* --- Next Lesson: text-style link button --- */
body .learndash-wrapper .ld-navigation__next-link,
body .learndash-wrapper .ld-navigation__next-link:active,
body .learndash-wrapper .ld-navigation__next-link:focus,
body .learndash-wrapper .ld-navigation__next-link:hover,
body .learndash-wrapper .ld-navigation__next-link--just-completed,
body .learndash-wrapper .ld-navigation__next-link--just-completed:active,
body .learndash-wrapper .ld-navigation__next-link--just-completed:focus,
body .learndash-wrapper .ld-navigation__next-link--just-completed:hover,
body .learndash-wrapper .ld-navigation__next-link--no-user,
body .learndash-wrapper .ld-navigation__next-link--no-user:active,
body .learndash-wrapper .ld-navigation__next-link--no-user:focus,
body .learndash-wrapper .ld-navigation__next-link--no-user:hover {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    color: var(--color-secondary) !important;
    font-family: var(--font-heading) !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    padding: 0.5rem 0 !important;
    box-shadow: none !important;
    text-decoration: none !important;
    border-radius: 0 !important;
}

body .learndash-wrapper .ld-navigation__next-link:hover,
body .learndash-wrapper .ld-navigation__next-link--just-completed:hover,
body .learndash-wrapper .ld-navigation__next-link--no-user:hover {
    color: var(--color-primary) !important;
    background: transparent !important;
    background-color: transparent !important;
}

/* Nav link icons (arrows) */
body .learndash-wrapper .ld-navigation__icon {
    width: 16px !important;
    height: 16px !important;
    color: currentColor !important;
}

/* Nav label text */
body .learndash-wrapper .ld-navigation__label {
    font-family: var(--font-heading) !important;
    font-weight: 600 !important;
}

/* --- Mark Complete button: primary pill --- */
body .learndash-wrapper .ld-navigation__progress-mark-complete-button,
body .learndash-wrapper .ld-navigation__progress-mark-complete-button:active,
body .learndash-wrapper .ld-navigation__progress-mark-complete-button:focus,
body .learndash-wrapper .ld-navigation__progress-mark-complete-button:hover,
body .learndash-wrapper .ld-navigation__progress-mark-complete-button:focus-visible,
body .learndash-wrapper .ld-navigation__progress-mark-complete-button:focus-within,
body .learndash-wrapper .ld-navigation__progress-mark-complete button.learndash_mark_complete_button,
body .learndash-wrapper .ld-navigation__progress-mark-complete input.learndash_mark_complete_button,
body .learndash-wrapper .ld-navigation__progress-mark-complete .learndash_mark_complete_button {
    all: unset !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.4rem !important;
    background: transparent !important;
    background-color: transparent !important;
    color: var(--color-secondary) !important;
    border: 1px solid var(--color-secondary) !important;
    border-radius: 9999px !important;
    font-family: var(--font-heading) !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    padding: 0.75rem 1.5rem !important;
    box-shadow: none !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease, color 0.2s ease !important;
}

body .learndash-wrapper .ld-navigation__progress-mark-complete-button:hover,
body .learndash-wrapper .ld-navigation__progress-mark-complete-button:active,
body .learndash-wrapper .ld-navigation__progress-mark-complete .learndash_mark_complete_button:hover {
    background: var(--color-secondary) !important;
    background-color: var(--color-secondary) !important;
    color: white !important;
}

/* Mark incomplete (already completed) — secondary style */
body .learndash-wrapper .ld-navigation__progress-mark-incomplete-button,
body .learndash-wrapper .ld-navigation__progress-mark-incomplete-button:active,
body .learndash-wrapper .ld-navigation__progress-mark-incomplete-button:focus,
body .learndash-wrapper .ld-navigation__progress-mark-incomplete-button:hover {
    background: transparent !important;
    background-color: transparent !important;
    color: var(--color-gray-5) !important;
    border: 1px solid var(--color-gray-3) !important;
    border-radius: 9999px !important;
    font-family: var(--font-heading) !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    padding: 0.75rem 1.5rem !important;
    box-shadow: none !important;
}

/* Hide the "Lesson Marked Complete" text — already shown in the progress bar at the top */
body .learndash-wrapper .ld-navigation__progress-completed {
    display: none !important;
}

body .learndash-wrapper .ld-navigation__icon--lesson-complete {
    color: #22c55e !important;
}

/* ---------------------------------------------------------------------------
   Breadcrumbs — handled by template override, just clean up container
   --------------------------------------------------------------------------- */
body .learndash-wrapper .ld-breadcrumbs,
body .learndash-wrapper .ld-breadcrumbs--modern {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* ---------------------------------------------------------------------------
   Content area — restore list styles stripped by Tailwind preflight
   --------------------------------------------------------------------------- */
/* Restore list styles inside lesson/topic content (Tailwind preflight strips them) */
body .learndash-wrapper .ld-layout__content ul,
body .learndash-wrapper .ld-tab-bar__panel ul,
body .learndash-course-content ul,
body .learndash-content-body ul {
    list-style-type: disc !important;
    padding-left: 1.5rem !important;
    margin-bottom: 1rem !important;
}

body .learndash-wrapper .ld-layout__content ol,
body .learndash-wrapper .ld-tab-bar__panel ol,
body .learndash-course-content ol,
body .learndash-content-body ol {
    list-style-type: decimal !important;
    padding-left: 1.5rem !important;
    margin-bottom: 1rem !important;
}

body .learndash-wrapper .ld-layout__content li,
body .learndash-wrapper .ld-tab-bar__panel li,
body .learndash-course-content li,
body .learndash-content-body li {
    margin-bottom: 0.25rem !important;
}

/* Exclude LearnDash UI component lists (sidebar nav, accordion, navigation) */
body .learndash-wrapper .ld-accordion ul,
body .learndash-wrapper .ld-accordion ol,
body .learndash-wrapper .ld-navigation ul,
body .learndash-wrapper .ld-navigation ol,
body .learndash-wrapper .ld-course-navigation ul,
body .learndash-wrapper .ld-course-navigation ol,
body .learndash-wrapper .ld-focus-sidebar ul,
body .learndash-wrapper .ld-focus-sidebar ol {
    list-style-type: none !important;
    padding-left: 0 !important;
    margin-bottom: 0 !important;
}

/* ---------------------------------------------------------------------------
   Content area — typography
   --------------------------------------------------------------------------- */
body .learndash-wrapper h1,
body .learndash-wrapper h2,
body .learndash-wrapper h3,
body .learndash-wrapper h4 {
    font-family: var(--font-heading) !important;
    font-weight: 700 !important;
    letter-spacing: -0.025em !important;
    color: var(--color-secondary) !important;
}

body .learndash-wrapper .ld-layout__content h2,
body .learndash-wrapper .ld-tab-bar__panel h2,
body .learndash-course-content h2 {
    font-size: 1.5rem !important;
    margin-top: 2rem !important;
    margin-bottom: 0.75rem !important;
}

body .learndash-wrapper .ld-layout__content h3,
body .learndash-wrapper .ld-tab-bar__panel h3,
body .learndash-course-content h3 {
    font-size: 1.25rem !important;
    margin-top: 1.5rem !important;
    margin-bottom: 0.5rem !important;
}

body .learndash-wrapper .ld-layout__content h4,
body .learndash-wrapper .ld-tab-bar__panel h4,
body .learndash-course-content h4 {
    font-size: 1.125rem !important;
    margin-top: 1.25rem !important;
    margin-bottom: 0.5rem !important;
}

body .learndash-wrapper p {
    color: var(--color-secondary) !important;
    line-height: 1.7 !important;
}

body .learndash-wrapper .ld-tab-bar__panel p,
body .learndash-wrapper .ld-layout__content p {
    color: var(--color-secondary) !important;
    line-height: 1.7 !important;
    margin-bottom: 1rem !important;
}

body .learndash-wrapper .ld-layout__content a:not([class*="ld-"]):not([class*="button"]),
body .learndash-wrapper .ld-tab-bar__panel a:not([class*="ld-"]):not([class*="button"]) {
    color: var(--color-primary) !important;
    text-decoration: none !important;
}

body .learndash-wrapper .ld-layout__content a:not([class*="ld-"]):not([class*="button"]):hover,
body .learndash-wrapper .ld-tab-bar__panel a:not([class*="ld-"]):not([class*="button"]):hover {
    color: var(--color-primary-2) !important;
}

/* ---------------------------------------------------------------------------
   Tabs (modern) — Content / Materials
   --------------------------------------------------------------------------- */
body .learndash-wrapper .ld-tab-bar__tabs {
    border-bottom: 1px solid var(--color-gray-3) !important;
}

body .learndash-wrapper .ld-tab-bar__tab {
    font-family: var(--font-heading) !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    color: var(--color-gray-5) !important;
    border: none !important;
    padding: 0.75rem 1rem !important;
}

body .learndash-wrapper .ld-tab-bar__tab.ld--selected {
    color: var(--color-primary) !important;
    border-bottom: 2px solid var(--color-primary) !important;
}

body .learndash-wrapper .ld-tab-bar__panel {
    border: none !important;
    padding: 1.5rem 0 !important;
}

/* ---------------------------------------------------------------------------
   Accordion (course lesson list)
   --------------------------------------------------------------------------- */
body .learndash-wrapper .ld-accordion {
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
}


body .learndash-wrapper .ld-accordion__section {
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
}

body .learndash-wrapper .ld-accordion__content {
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
}

body .learndash-wrapper .ld-accordion__items {
    gap: 0 !important;
}

body .learndash-wrapper .ld-accordion__item {
    border: none !important;
    border-bottom: 1px solid var(--color-gray-3) !important;
    border-radius: 0 !important;
    position: relative !important;
    padding: 0 0 0 16px !important;
    margin: 0 !important;
    transition: background-color 0.3s cubic-bezier(0.31,0.75,0.22,1),
                box-shadow 0.3s cubic-bezier(0.31,0.75,0.22,1) !important;
}

body .learndash-wrapper .ld-accordion__item:hover {
    background-color: #f9fafb !important;
    box-shadow: inset 3px 0 0 0 var(--color-primary) !important;
}

body .learndash-wrapper .ld-accordion__item-header {
    font-family: var(--font-heading) !important;
    font-weight: 600 !important;
    color: var(--color-secondary) !important;
    padding: 1.25rem 0 !important;
    margin: 0 !important;
    border: none !important;
}

body .learndash-wrapper .ld-accordion__item-title {
    font-family: var(--font-heading) !important;
    font-weight: 600 !important;
    font-size: 0.9375rem !important;
    color: var(--color-secondary) !important;
}

body .learndash-wrapper .ld-accordion__item-header:hover .ld-accordion__item-title {
    color: var(--color-primary) !important;
}

body .learndash-wrapper .ld-accordion__item-header a.ld-accordion__item-title {
    text-decoration: none !important;
    color: inherit !important;
}

body .learndash-wrapper .ld-accordion__header {
    display: none !important;
}

body .learndash-wrapper .ld-accordion__expand-button {
    background: transparent !important;
    border-radius: 9999px !important;
    font-size: 0 !important;
    color: var(--color-secondary) !important;
    padding: 0 !important;
    border: none !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    transition: background-color 0.15s ease !important;
    position: absolute !important;
    right: 1rem !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
}

body .learndash-wrapper .ld-accordion__expand-button:hover {
    background: var(--color-gray-1) !important;
}

/* Remove the border-left pseudo-element from LearnDash's default */
body .learndash-wrapper .ld-accordion__expand-button::before {
    display: none !important;
}

/* Hide the text label, keep only the chevron icon */
body .learndash-wrapper .ld-accordion__expand-button-text {
    display: none !important;
}

/* Size the chevron SVG */
body .learndash-wrapper .ld-accordion__expand-button .ld-svgicon {
    width: 16px !important;
    height: 16px !important;
    color: var(--color-secondary) !important;
}

/* Accordion item progress icons */
body .learndash-wrapper .ld-accordion__item-icon--progress svg {
    color: var(--color-gray-4) !important;
}

body .learndash-wrapper .ld-accordion__item-icon--progress .ld-icon--complete svg {
    color: #22c55e !important;
}

/* ---------------------------------------------------------------------------
   Generic buttons (modern)
   --------------------------------------------------------------------------- */
body .learndash-wrapper .ld-button--primary,
body .learndash-wrapper .ld-button--primary:active,
body .learndash-wrapper .ld-button--primary:focus,
body .learndash-wrapper .ld-button--primary:hover {
    background: var(--color-primary) !important;
    background-color: var(--color-primary) !important;
    border-radius: 9999px !important;
    font-family: var(--font-heading) !important;
    font-weight: 600 !important;
    border: none !important;
    box-shadow: none !important;
    color: white !important;
}

body .learndash-wrapper .ld-button--primary:hover,
body .learndash-wrapper .ld-button--primary:active {
    background: var(--color-primary-2) !important;
    background-color: var(--color-primary-2) !important;
}

body .learndash-wrapper .ld-button--secondary,
body .learndash-wrapper .ld-button--secondary:active,
body .learndash-wrapper .ld-button--secondary:focus,
body .learndash-wrapper .ld-button--secondary:hover {
    background: transparent !important;
    background-color: transparent !important;
    color: var(--color-secondary) !important;
    border: 2px solid var(--color-gray-3) !important;
    border-radius: 9999px !important;
    font-family: var(--font-heading) !important;
    font-weight: 600 !important;
    box-shadow: none !important;
}

body .learndash-wrapper .ld-button--secondary:hover {
    border-color: var(--color-primary) !important;
    color: var(--color-primary) !important;
}

body .learndash-wrapper .ld-button--tertiary,
body .learndash-wrapper .ld-button--tertiary:active,
body .learndash-wrapper .ld-button--tertiary:focus,
body .learndash-wrapper .ld-button--tertiary:hover {
    background: transparent !important;
    background-color: transparent !important;
    color: var(--color-secondary) !important;
    border: none !important;
    box-shadow: none !important;
    font-family: var(--font-heading) !important;
    font-weight: 600 !important;
}

body .learndash-wrapper .ld-button--tertiary:hover {
    color: var(--color-primary) !important;
}

/* ---------------------------------------------------------------------------
   Primary color overrides (LearnDash brand → our brand)
   --------------------------------------------------------------------------- */
body .learndash-wrapper .ld-primary-background {
    background: var(--color-secondary) !important;
}

body .learndash-wrapper .ld-primary-color {
    color: var(--color-primary) !important;
}

/* ---------------------------------------------------------------------------
   Pill badge
   --------------------------------------------------------------------------- */
body .learndash-wrapper .ld-pill {
    font-family: var(--font-heading) !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
}

/* ---------------------------------------------------------------------------
   Quiz styles
   --------------------------------------------------------------------------- */
body .learndash-wrapper .wpProQuiz_content input[type="button"],
body .learndash-wrapper .wpProQuiz_content .wpProQuiz_button {
    background: var(--color-primary) !important;
    color: white !important;
    padding: 0.75rem 1.5rem !important;
    border-radius: 9999px !important;
    font-family: var(--font-heading) !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    border: none !important;
    cursor: pointer !important;
}

body .learndash-wrapper .wpProQuiz_content input[type="button"]:hover,
body .learndash-wrapper .wpProQuiz_content .wpProQuiz_button:hover {
    background: var(--color-primary-2) !important;
}

/* ---------------------------------------------------------------------------
   Enrollment section
   --------------------------------------------------------------------------- */
body .learndash-wrapper .ld-enrollment__join-button {
    background: var(--color-primary) !important;
    background-color: var(--color-primary) !important;
    border-radius: 9999px !important;
    font-family: var(--font-heading) !important;
    font-weight: 600 !important;
    border: none !important;
    color: white !important;
}

body .learndash-wrapper .ld-enrollment__join-button:hover {
    background: var(--color-primary-2) !important;
    background-color: var(--color-primary-2) !important;
}

/* ---------------------------------------------------------------------------
   Assignments
   --------------------------------------------------------------------------- */
body .learndash-wrapper .ld-assignments__list-item {
    border-bottom: 1px solid var(--color-gray-3) !important;
}

body .learndash-wrapper .ld-assignments__list-item-title {
    font-family: var(--font-heading) !important;
    font-weight: 600 !important;
    color: var(--color-secondary) !important;
}

body .learndash-wrapper .ld-assignments__list-item-status--approved {
    color: #22c55e !important;
}

body .learndash-wrapper .ld-assignments__upload-form-submit {
    background: var(--color-primary) !important;
    border-radius: 9999px !important;
    font-family: var(--font-heading) !important;
    font-weight: 600 !important;
    color: white !important;
    border: none !important;
}

body .learndash-wrapper .ld-assignments__upload-form-submit:hover {
    background: var(--color-primary-2) !important;
}

/* ---------------------------------------------------------------------------
   Classic LD30 fallbacks (in case any classic markup is still rendered)
   --------------------------------------------------------------------------- */

/* Classic breadcrumbs */
body .learndash-wrapper .ld-breadcrumbs-segments {
    list-style: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    font-family: var(--font-heading) !important;
    font-size: 0.875rem !important;
}

/* Classic status */
body .learndash-wrapper .ld-lesson-status,
body .learndash-wrapper .ld-topic-status,
body .learndash-wrapper .ld-quiz-status {
    border: none !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
}

body .learndash-wrapper .ld-breadcrumbs .ld-status {
    display: none !important;
}

/* Classic separators */
body .learndash-wrapper .ld-sep {
    display: none !important;
}

body .learndash-wrapper .ld-table-list,
body .learndash-wrapper .ld-table-list-item,
body .learndash-wrapper .ld-table-list-item-preview,
body .learndash-wrapper .ld-item-list-items,
body .learndash-wrapper .ld-item-list-item,
body .learndash-wrapper .ld-lesson-topic-list,
body .learndash-wrapper .ld-content-actions {
    border: none !important;
}

/* Classic content actions */
body .learndash-wrapper .ld-content-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 1rem !important;
}

/* Classic mark complete button */
body .learndash-wrapper .learndash_mark_complete_button,
body .learndash-wrapper #learndash_mark_complete_button,
body .learndash-wrapper input.learndash_mark_complete_button,
body .learndash-wrapper .sfwd-mark-complete .learndash_mark_complete_button,
body .learndash-wrapper .ld-content-action input[type="submit"] {
    background: var(--color-primary) !important;
    color: white !important;
    padding: 0.75rem 1.5rem !important;
    border-radius: 9999px !important;
    font-family: var(--font-heading) !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    border: none !important;
    cursor: pointer !important;
    box-shadow: none !important;
}

body .learndash-wrapper .learndash_mark_complete_button:hover,
body .learndash-wrapper #learndash_mark_complete_button:hover,
body .learndash-wrapper .ld-content-action input[type="submit"]:hover {
    background: var(--color-primary-2) !important;
}

/* Classic nav buttons */
body .learndash-wrapper .ld-content-action a,
body .learndash-wrapper .ld-content-action a.ld-button {
    color: var(--color-secondary) !important;
    text-decoration: none !important;
    font-family: var(--font-heading) !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    background: transparent !important;
    border: none !important;
    padding: 0.5rem 0 !important;
    box-shadow: none !important;
}

body .learndash-wrapper .ld-content-action a:hover {
    color: var(--color-primary) !important;
}

/* Classic "Back to Course" */
body .learndash-wrapper .ld-course-step-back,
body .learndash-wrapper a.ld-course-step-back {
    color: var(--color-secondary) !important;
    text-decoration: none !important;
    font-family: var(--font-heading) !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

body .learndash-wrapper .ld-course-step-back:hover {
    color: var(--color-primary) !important;
}

/* Hide duplicate "Back to Course" */
body .learndash-wrapper .ld-content-actions ~ .ld-course-step-back,
body .learndash-wrapper > a.ld-course-step-back {
    display: none !important;
}

/* Classic course listing */
body .learndash-wrapper .ld-table-list-header {
    display: none !important;
}

body .learndash-wrapper .ld-table-list-item-preview {
    padding: 1rem 1.25rem !important;
    border-bottom: 1px solid var(--color-gray-3) !important;
}

body .learndash-wrapper .ld-table-list-item:last-child .ld-table-list-item-preview {
    border-bottom: none !important;
}

body .learndash-wrapper .ld-table-list-item-preview:hover {
    background: #f9fafb !important;
}

body .learndash-wrapper .ld-item-name .ld-item-title {
    font-family: var(--font-heading) !important;
    font-weight: 600 !important;
    font-size: 0.9375rem !important;
    color: var(--color-secondary) !important;
}

body .learndash-wrapper .ld-item-name a {
    text-decoration: none !important;
    color: var(--color-secondary) !important;
}

body .learndash-wrapper .ld-item-name a:hover {
    color: var(--color-primary) !important;
}

/* Classic status icons */
body .learndash-wrapper .ld-status-icon.ld-status-complete {
    color: #22c55e !important;
}

body .learndash-wrapper .ld-status-icon.ld-status-incomplete {
    color: var(--color-gray-4) !important;
}

/* Classic progress bar */
body .learndash-wrapper .ld-progress .ld-progress-bar {
    background: #f3f4f6 !important;
    border-radius: 9999px !important;
    height: 0.5rem !important;
}

body .learndash-wrapper .ld-progress .ld-progress-bar .ld-progress-bar-percentage {
    background: var(--color-primary) !important;
    border-radius: 9999px !important;
}

body .learndash-wrapper .ld-progress .ld-progress-stats {
    font-family: var(--font-heading) !important;
    font-size: 0.75rem !important;
    color: var(--color-gray-5) !important;
}

/* Classic expand/collapse */
body .learndash-wrapper .ld-expand-button {
    background: var(--color-gray-1) !important;
    border-radius: 9999px !important;
    font-family: var(--font-heading) !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    color: var(--color-secondary) !important;
    padding: 0.375rem 1rem !important;
    border: none !important;
}

body .learndash-wrapper .ld-expand-button:hover {
    background: var(--color-gray-3) !important;
}

/* Classic inline button overrides */
body .learndash-wrapper .ld-button:not(.ld-button-transparent):not(.ld-button-reverse) {
    background: var(--color-primary) !important;
    border-radius: 9999px !important;
    font-family: var(--font-heading) !important;
    font-weight: 600 !important;
    border: none !important;
    box-shadow: none !important;
}

body .learndash-wrapper .ld-button:not(.ld-button-transparent):not(.ld-button-reverse):hover {
    background: var(--color-primary-2) !important;
}

body .learndash-wrapper .ld-button.ld-button-transparent,
body .learndash-wrapper .ld-button.ld-button-reverse {
    color: var(--color-secondary) !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

body .learndash-wrapper .ld-button.ld-button-transparent:hover,
body .learndash-wrapper .ld-button.ld-button-reverse:hover {
    color: var(--color-primary) !important;
}

/* Classic tabs */
body .learndash-wrapper .ld-tab-content {
    border: none !important;
    padding: 1.5rem 0 !important;
}

body .learndash-wrapper .ld-tabs .ld-tabs-navigation {
    border-bottom: 1px solid var(--color-gray-3) !important;
}

body .learndash-wrapper .ld-tabs .ld-tabs-navigation .ld-tab {
    font-family: var(--font-heading) !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    color: var(--color-gray-5) !important;
    border: none !important;
}

body .learndash-wrapper .ld-tabs .ld-tabs-navigation .ld-tab.ld-active {
    color: var(--color-primary) !important;
    border-bottom: 2px solid var(--color-primary) !important;
}

/* Classic alerts */
body .learndash-wrapper .ld-alert {
    border: none !important;
    border-radius: 0.5rem !important;
    font-family: var(--font-sans) !important;
    padding: 1rem 1.25rem !important;
}

body .learndash-wrapper .ld-alert-success {
    background: #f0fdf4 !important;
    color: #166534 !important;
}

body .learndash-wrapper .ld-alert-warning {
    background: #fffbeb !important;
    color: #92400e !important;
}

/* ===========================================================================
   FOCUS MODE
   =========================================================================== */

/* --- Header bar --- */
body .learndash-wrapper .ld-focus .ld-focus-header {
    background: white !important;
    border-bottom: 1px solid var(--color-gray-3) !important;
    height: 56px !important;
}

/* Brand logo area */
body .learndash-wrapper .ld-focus .ld-focus-header .ld-brand-logo {
    background-color: white !important;
    border-right: 1px solid var(--color-gray-3) !important;
    display: flex !important;
    align-items: center !important;
}

body .learndash-wrapper .ld-focus .ld-focus-header .ld-brand-logo a {
    font-family: var(--font-heading) !important;
    font-weight: 700 !important;
    color: var(--color-secondary) !important;
    text-decoration: none !important;
}

/* Header sections */
body .learndash-wrapper .ld-focus .ld-focus-header .ld-content-action {
    border: none !important;
    border-right: 1px solid var(--color-gray-3) !important;
    height: 56px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

body .learndash-wrapper .ld-focus .ld-focus-header .ld-content-action:last-child,
body .learndash-wrapper .ld-focus .ld-focus-header .ld-content-action.ld-empty {
    border-right: none !important;
}

body .learndash-wrapper .ld-focus .ld-focus-header .ld-content-action.ld-empty {
    display: none !important;
}

body .learndash-wrapper .ld-focus .ld-focus-header .ld-user-menu {
    border-left: 1px solid var(--color-gray-3) !important;
}

/* Progress section in header — match course page style */
body .learndash-wrapper .ld-focus .ld-focus-header .ld-progress {
    border: none !important;
    border-right: 1px solid var(--color-gray-3) !important;
    height: 56px !important;
    padding: 0.5rem 1.5rem !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: stretch !important;
}

body .learndash-wrapper .ld-focus .ld-focus-header .ld-progress .ld-progress-heading {
    font-family: var(--font-heading) !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    color: var(--color-gray-5) !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    margin-bottom: 0.375rem !important;
}

body .learndash-wrapper .ld-focus .ld-focus-header .ld-progress .ld-progress-steps {
    font-family: var(--font-heading) !important;
    font-size: 0.75rem !important;
    color: var(--color-gray-5) !important;
    letter-spacing: 0.05em !important;
}

body .learndash-wrapper .ld-focus .ld-focus-header .ld-progress-wrap {
    max-width: 100% !important;
}

body .learndash-wrapper .ld-focus .ld-focus-header .ld-progress-bar {
    background: var(--color-gray-2) !important;
    height: 6px !important;
    border-radius: 9999px !important;
    overflow: hidden !important;
}

body .learndash-wrapper .ld-focus .ld-focus-header .ld-progress-bar-percentage {
    background: var(--color-primary) !important;
    height: 100% !important;
    border-radius: 9999px !important;
}

/* Header Mark Complete button — match prev/next link style */
body .learndash-wrapper .ld-focus .ld-focus-header .sfwd-mark-complete,
body .learndash-wrapper .ld-focus .ld-focus-header #sfwd-mark-complete {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 1rem !important;
}

body .learndash-wrapper .ld-focus .ld-focus-header .sfwd-mark-complete .learndash_mark_complete_button,
body .learndash-wrapper .ld-focus .ld-focus-header #sfwd-mark-complete .learndash_mark_complete_button,
body .learndash-wrapper .ld-focus .ld-focus-header #sfwd-mark-complete #learndash_mark_complete_button,
body .learndash-wrapper .ld-focus .ld-focus-header .ld-content-action .learndash_mark_complete_button,
body .learndash-wrapper .ld-focus .ld-focus-header input.learndash_mark_complete_button,
body .learndash-wrapper .ld-focus .ld-focus-header button.learndash_mark_complete_button {
    all: unset !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-family: var(--font-heading) !important;
    font-size: 0.8125rem !important;
    font-weight: 600 !important;
    color: var(--color-secondary) !important;
    background: transparent !important;
    border: none !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    letter-spacing: 0.01em !important;
    line-height: 1.4 !important;
    box-sizing: border-box !important;
    visibility: visible !important;
    opacity: 1 !important;
    text-decoration: none !important;
}

body .learndash-wrapper .ld-focus .ld-focus-header .sfwd-mark-complete .learndash_mark_complete_button:hover,
body .learndash-wrapper .ld-focus .ld-focus-header #sfwd-mark-complete .learndash_mark_complete_button:hover,
body .learndash-wrapper .ld-focus .ld-focus-header #sfwd-mark-complete #learndash_mark_complete_button:hover,
body .learndash-wrapper .ld-focus .ld-focus-header .ld-content-action .learndash_mark_complete_button:hover,
body .learndash-wrapper .ld-focus .ld-focus-header input.learndash_mark_complete_button:hover,
body .learndash-wrapper .ld-focus .ld-focus-header button.learndash_mark_complete_button:hover {
    color: var(--color-primary) !important;
}

/* Header complete status icon */
body .learndash-wrapper .ld-focus .ld-focus-header .sfwd-mark-complete:after,
body .learndash-wrapper .ld-focus .ld-focus-header #sfwd-mark-complete:after {
    color: #22c55e !important;
}

/* Previous / Next links in header */
body .learndash-wrapper .ld-focus .ld-focus-header .ld-content-actions a {
    font-family: var(--font-heading) !important;
    font-weight: 600 !important;
    font-size: 0.8125rem !important;
    color: var(--color-secondary) !important;
    text-decoration: none !important;
    letter-spacing: 0.01em !important;
}

body .learndash-wrapper .ld-focus .ld-focus-header .ld-content-actions a:hover {
    color: var(--color-primary) !important;
    opacity: 1 !important;
}

/* Normalize all header icon sizes */
body .learndash-wrapper .ld-focus .ld-focus-header .ld-icon {
    font-size: 0.8125rem !important;
}

body .learndash-wrapper .ld-focus .ld-focus-header .ld-svgicon {
    width: 1.125rem !important;
    height: 1.125rem !important;
    margin-right: 0.375rem !important;
}

/* Remove outline on click, only show on keyboard focus */
body .learndash-wrapper .ld-focus .ld-focus-header .ld-content-action *:focus,
body .learndash-wrapper .ld-focus .ld-focus-header .sfwd-mark-complete *:focus,
body .learndash-wrapper .ld-focus .ld-focus-header #sfwd-mark-complete *:focus,
body .learndash-wrapper .ld-focus .ld-focus-header .sfwd-mark-complete:focus,
body .learndash-wrapper .ld-focus .ld-focus-header #sfwd-mark-complete:focus {
    outline: none !important;
    box-shadow: none !important;
}

body .learndash-wrapper .ld-focus .ld-focus-header .ld-content-action *:focus-visible,
body .learndash-wrapper .ld-focus .ld-focus-header .sfwd-mark-complete *:focus-visible,
body .learndash-wrapper .ld-focus .ld-focus-header #sfwd-mark-complete *:focus-visible {
    outline: 2px solid var(--color-primary) !important;
    outline-offset: 2px !important;
}

/* User menu in header */
body .learndash-wrapper .ld-focus .ld-focus-header .ld-user-menu {
    background: transparent !important;
}

body .learndash-wrapper .ld-focus .ld-focus-header .ld-user-menu .ld-text,
body .learndash-wrapper .ld-focus .ld-focus-header .ld-user-menu .ld-user-welcome-text {
    font-family: var(--font-sans) !important;
    color: var(--color-gray-5) !important;
    font-size: 0.8125rem !important;
}

body .learndash-wrapper .ld-focus .ld-focus-header .ld-user-menu .ld-profile-avatar img {
    border-radius: 9999px !important;
    border: 2px solid var(--color-gray-3) !important;
}

/* Mobile nav hamburger bars */
body .learndash-wrapper .ld-focus .ld-focus-header .ld-mobile-nav span {
    background-color: var(--color-secondary) !important;
}

/* --- Sidebar --- */
body .learndash-wrapper .ld-focus .ld-focus-sidebar {
    background: white !important;
    border-right: 1px solid var(--color-gray-3) !important;
    border-color: var(--color-gray-3) !important;
    padding-top: 56px !important;
}

/* --- Logo area — constrain to 157×28 --- */
body .learndash-wrapper .ld-focus .ld-focus-header .ld-brand-logo img {
    width: 157px !important;
    height: 28px !important;
    object-fit: contain !important;
}

/* --- Course heading in sidebar --- */
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation-heading {
    background-color: white !important;
    border-bottom: 1px solid var(--color-gray-3) !important;
    border-right: 1px solid var(--color-gray-3) !important;
    min-height: 56px !important;
    padding: 0.75rem 3rem 0.75rem 1.25rem !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation-heading .ld-icon-content {
    display: none !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation-heading .ld-focus-mode-course-heading-wrapper {
    font-family: var(--font-heading) !important;
    font-weight: 700 !important;
    font-size: 0.8125rem !important;
    color: var(--color-secondary) !important;
    padding-left: 0 !important;
    letter-spacing: 0.01em !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation-heading a,
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation-heading .ld-focus-mode-course-heading-wrapper a {
    font-family: var(--font-heading) !important;
    font-weight: 700 !important;
    font-size: 0.8125rem !important;
    color: var(--color-secondary) !important;
    text-decoration: none !important;
    letter-spacing: 0.01em !important;
}

/* --- Sidebar toggle button --- */
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-focus-sidebar-trigger .ld-icon {
    background: var(--color-gray-1) !important;
    border: none !important;
    color: var(--color-secondary) !important;
    font-size: 13px !important;
    width: 30px !important;
    height: 30px !important;
    line-height: 30px !important;
    text-align: center !important;
    padding: 0 !important;
    overflow: hidden !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-focus-sidebar-trigger:hover .ld-icon,
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-focus-sidebar-trigger:focus .ld-icon {
    background: var(--color-gray-3) !important;
    color: var(--color-secondary) !important;
}

/* --- Sidebar lesson items --- */
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation .ld-lesson-item {
    border-bottom: 1px solid var(--color-gray-3) !important;
    background-color: white !important;
    padding: 0 !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation .ld-lesson-item .ld-lesson-item-preview {
    padding: 0.75rem 1rem !important;
}

/* Lesson link styling */
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-lesson-item-preview-heading {
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
    text-decoration: none !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-lesson-title {
    font-family: var(--font-sans) !important;
    font-size: 0.8125rem !important;
    font-weight: 500 !important;
    color: var(--color-secondary) !important;
    line-height: 1.4 !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-lesson-item-preview-heading:hover .ld-lesson-title {
    color: var(--color-primary) !important;
}

/* Current/active lesson highlight — only when directly on the lesson (not a child topic) */
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-lesson-item.ld-is-current-lesson {
    box-shadow: none !important;
}

/* Highlight lesson preview only when NOT viewing a child topic */
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-lesson-item.ld-is-current-lesson:not(:has(.ld-is-current-item)) > .ld-lesson-item-preview {
    background-color: var(--color-gray-1) !important;
}

/* Current/active topic highlight */
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-table-list-item-preview[aria-current="page"],
body .learndash-wrapper .ld-focus .ld-focus-sidebar a.ld-table-list-item-preview[aria-current="page"] {
    background-color: var(--color-gray-1) !important;
}

/* Status icons */
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-status-icon {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    border-radius: 9999px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-status-icon.ld-status-complete {
    background: #22c55e !important;
    color: white !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-status-icon.ld-status-complete .ld-icon {
    font-size: 0.6em !important;
    color: white !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-status-icon.ld-status-incomplete {
    background: transparent !important;
    border: 2px solid var(--color-gray-3) !important;
}

/* --- Topic list (nested under lessons) --- */
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation .ld-topic-list.ld-table-list {
    background-color: white !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
}

/* Hide the triangle pseudo-element */
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation .ld-topic-list.ld-table-list::before,
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation .ld-topic-list.ld-table-list:before {
    display: none !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-topic-list .ld-table-list-item {
    border-bottom: 1px solid var(--color-gray-3) !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-topic-list .ld-table-list-item:last-child {
    border-bottom: none !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-topic-list .ld-table-list-item-preview {
    padding: 0.5rem 1rem 0.5rem 3.2rem !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-topic-title {
    font-family: var(--font-sans) !important;
    font-size: 0.75rem !important;
    font-weight: 400 !important;
    color: var(--color-secondary) !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-table-list-item-preview:hover .ld-topic-title {
    color: var(--color-primary) !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-topic-list .ld-table-list-item a {
    text-decoration: none !important;
}

/* --- Expand/collapse button ("1 Topic") --- */
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-expand-button {
    background: transparent !important;
    font-family: var(--font-sans) !important;
    font-size: 0.75rem !important;
    font-weight: 500 !important;
    color: var(--color-gray-5) !important;
    padding: 0.375rem 0 0 2.25rem !important;
    outline: none !important;
    box-shadow: none !important;
    border: none !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-expand-button:focus,
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-expand-button:focus-visible {
    outline: none !important;
    box-shadow: none !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-expand-button .ld-icon {
    background: var(--color-gray-3) !important;
    color: var(--color-gray-5) !important;
    border-radius: 9999px !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-expand-button .ld-expand-text {
    color: var(--color-gray-5) !important;
    font-size: 0.75rem !important;
}

/* Expanded lesson state */
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation .ld-lesson-item-expanded {
    margin: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    padding: 0 !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation .ld-lesson-item-expanded .ld-table-list-items {
    padding: 0 !important;
}

/* Remove focus outline from expand button wrapper */
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-expand-button.ld-button-alternate {
    outline: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-expand-button.ld-button-alternate:focus,
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-expand-button.ld-button-alternate:focus-visible,
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-expand-button.ld-button-alternate:active {
    outline: none !important;
    outline-width: 0 !important;
    box-shadow: none !important;
}

/* Status icons — global */
body .learndash-wrapper .ld-focus .ld-status-complete,
body .learndash-wrapper .ld-focus .ld-status-icon.ld-status-complete {
    color: white !important;
}

/* Section headings */
body .learndash-wrapper .ld-focus .ld-focus-sidebar .ld-lesson-item-section-heading .ld-lesson-section-heading {
    font-family: var(--font-heading) !important;
    font-weight: 700 !important;
    font-size: 0.625rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    color: var(--color-gray-5) !important;
    padding: 1rem 1rem 0.5rem !important;
}

/* --- Content area --- */
body .learndash-wrapper .ld-focus .ld-focus-main .ld-focus-content {
    font-family: var(--font-sans) !important;
    color: var(--color-secondary) !important;
    max-width: 48rem !important;
    padding: 5em 3rem !important;
}

body .learndash-wrapper .ld-focus .ld-focus-main .ld-focus-content h1 {
    font-family: var(--font-heading) !important;
    font-weight: 700 !important;
    font-size: 1.875rem !important;
    letter-spacing: -0.025em !important;
    color: var(--color-secondary) !important;
    margin-bottom: 1.5rem !important;
}

/* Focus mode content typography */
body .learndash-wrapper .ld-focus .ld-focus-content h2 {
    font-size: 1.5rem !important;
    margin-top: 2rem !important;
    margin-bottom: 0.75rem !important;
}

body .learndash-wrapper .ld-focus .ld-focus-content h3 {
    font-size: 1.25rem !important;
    margin-top: 1.5rem !important;
    margin-bottom: 0.5rem !important;
}

body .learndash-wrapper .ld-focus .ld-focus-content h4 {
    font-size: 1.125rem !important;
    margin-top: 1.25rem !important;
    margin-bottom: 0.5rem !important;
}

body .learndash-wrapper .ld-focus .ld-focus-content p {
    color: var(--color-secondary) !important;
    line-height: 1.7 !important;
    margin-bottom: 1rem !important;
}

/* Restore list styles in Focus Mode content */
body .learndash-wrapper .ld-focus .ld-focus-content ul {
    list-style-type: disc !important;
    padding-left: 1.5rem !important;
    margin-bottom: 1rem !important;
}

body .learndash-wrapper .ld-focus .ld-focus-content ol {
    list-style-type: decimal !important;
    padding-left: 1.5rem !important;
    margin-bottom: 1rem !important;
}

body .learndash-wrapper .ld-focus .ld-focus-content li {
    margin-bottom: 0.25rem !important;
}

/* Links in content */
body .learndash-wrapper .ld-focus .ld-focus-content a:not([class*="ld-"]):not([class*="button"]) {
    color: var(--color-primary) !important;
    text-decoration: none !important;
}

body .learndash-wrapper .ld-focus .ld-focus-content a:not([class*="ld-"]):not([class*="button"]):hover {
    color: var(--color-primary-2) !important;
}

/* --- User menu dropdown --- */
body .learndash-wrapper .ld-focus .ld-user-menu-items a {
    font-family: var(--font-sans) !important;
    font-size: 0.8125rem !important;
}

/* --- Comments section --- */
body .learndash-wrapper .ld-focus .ld-focus-comments {
    margin-top: 2rem !important;
    border-top: 1px solid var(--color-gray-3) !important;
    padding-top: 2rem !important;
}

body .learndash-wrapper .ld-focus .ld-focus-comments__heading {
    font-family: var(--font-heading) !important;
    font-weight: 700 !important;
    color: var(--color-secondary) !important;
}

/* ---------------------------------------------------------------------------
   Details section (course info sidebar)
   --------------------------------------------------------------------------- */
body .learndash-wrapper .ld-details {
    font-family: var(--font-sans) !important;
}

body .learndash-wrapper .ld-details__heading {
    font-family: var(--font-heading) !important;
    font-weight: 700 !important;
    color: var(--color-secondary) !important;
}

body .learndash-wrapper .ld-details__label {
    font-family: var(--font-heading) !important;
    font-weight: 600 !important;
    color: var(--color-gray-5) !important;
}

body .learndash-wrapper .ld-details__link {
    color: var(--color-primary) !important;
    text-decoration: none !important;
}

body .learndash-wrapper .ld-details__link:hover {
    color: var(--color-primary-2) !important;
}

/* ---------------------------------------------------------------------------
   Featured image
   --------------------------------------------------------------------------- */
body .learndash-wrapper .ld-featured-image {
    border-radius: 0.5rem !important;
    overflow: hidden !important;
}
