/* ============================================================
   LSL Resource Library — Card Feed
   ============================================================ */

.entry-content-wrapper ul.lsl-resource-list li::marker {
    content: "" !important;
}

   .lsl-resource-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.entry-content-wrapper .lsl-resource-item {
    background: #f4f6f9;
    border: 1px solid #dde3ed !important;
    border-left: 5px solid #182b59 !important;
    border-radius: 4px;
    padding: 16px 20px;
    margin-bottom: 16px;
}

/* Type-specific left border color — scoped to .entry-content-wrapper and
   forced with !important because Enfold applies its own list-item border
   styling that otherwise silently wins over a plain class selector
   (same root cause as the earlier ::marker bullet issue). */
.entry-content-wrapper .lsl-type-videos          { border-left-color: #182b59 !important; } /* navy */
.entry-content-wrapper .lsl-type-downloads       { border-left-color: #76a23f !important; } /* green */
.entry-content-wrapper .lsl-type-faqs            { border-left-color: #6a8c3b !important; } /* green dark */
.entry-content-wrapper .lsl-type-external-resources { border-left-color: #3a3a5c !important; } /* text med */

.lsl-resource-type {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #ffffff;
    background: #182b59;
    border-radius: 3px;
    padding: 2px 8px;
    margin-bottom: 8px;
}

/* Badge color matches border */
.lsl-type-videos          .lsl-resource-type { background: #182b59; }
.lsl-type-downloads       .lsl-resource-type { background: #76a23f; }
.lsl-type-faqs            .lsl-resource-type { background: #6a8c3b; }
.lsl-type-external-resources .lsl-resource-type { background: #3a3a5c; }

.lsl-resource-title {
    display: block;
    font-size: 16px;
    font-weight: 700;
    color: #182b59;
    text-decoration: none;
    margin-bottom: 6px;
}

.lsl-resource-title:hover {
    color: #76a23f;
    text-decoration: underline;
}

.lsl-resource-excerpt {
    font-size: 14px;
    color: #3a3a5c;
    margin: 0;
    line-height: 1.5;
}

/* ============================================================
   LSL Resource Nav
   ============================================================ */

.lsl-resource-nav {
    padding-right: 16px;
}

.lsl-nav-section {
    margin-bottom: 28px;
}

.lsl-nav-heading {
    display: block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: #182b59;
    margin-bottom: 8px;
    padding-bottom: 6px;
    border-bottom: 2px solid #76a23f;
}

.lsl-nav-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.lsl-nav-list li::marker {
    content: "" !important;
}

.lsl-nav-link {
    display: block;
    font-size: 14px;
    color: #3a3a5c;
    text-decoration: none;
    padding: 5px 0 5px 10px;
    border-left: 3px solid transparent;
    transition: all 0.15s ease;
}

.lsl-nav-link:hover {
    color: #182b59;
    border-left-color: #76a23f;
}

.lsl-nav-link.active {
    color: #182b59;
    font-weight: 700;
    border-left-color: #182b59;
}

/* ── Upcoming Events Widget ────────────────────────── */
.lsl-events-list {
    padding: 0;
}

.lsl-events-heading {
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #182b59;
    margin: 0 0 1rem 0;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #76a23f;
}

.lsl-event-item {
    display: flex;
    flex-direction: column;
    padding: 0.6rem 0.75rem;
    margin-bottom: 0.6rem;
    background: #f4f6f9;
    border-left: 4px solid #182b59;
    border-radius: 0 4px 4px 0;
}

.lsl-event-date {
    font-size: 0.7rem;
    color: #3a3a5c;
    margin-bottom: 0.2rem;
    letter-spacing: 0.03em;
}

.lsl-event-title {
    font-size: 0.88rem;
    font-weight: 700;
    color: #182b59;
    margin-bottom: 0.4rem;
    line-height: 1.3;
}

.lsl-event-register {
    font-size: 0.75rem;
    color: #76a23f;
    text-decoration: none;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.lsl-event-register:hover {
    color: #6a8c3b;
    text-decoration: underline;
}

.lsl-no-events {
    font-size: 0.85rem;
    color: #3a3a5c;
    font-style: italic;
}

/* ── Latest Episodes Widget ────────────────────────────
   Green Dark (#6a8c3b) used instead of the standard Green
   (#76a23f) so podcast cards don't visually double for
   Downloads cards in the center feed — same brand palette,
   distinct enough at a glance from both Events (navy) and
   Downloads (green).
   ────────────────────────────────────────────────── */
.lsl-podcast-list {
    padding: 0;
    margin-top: 2rem;
}

.lsl-podcast-heading-row {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin: 0 0 1rem 0;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #76a23f;
}

.lsl-podcast-heading {
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #182b59;
    margin: 0;
}

.lsl-podcast-browse-all {
    font-size: 0.72rem;
    font-weight: 700;
    color: #6a8c3b;
    text-decoration: none;
    letter-spacing: 0.02em;
    white-space: nowrap;
}

.lsl-podcast-browse-all:hover {
    color: #76a23f;
    text-decoration: underline;
}

.lsl-podcast-item {
    display: flex;
    flex-direction: column;
    padding: 0.6rem 0.75rem;
    margin-bottom: 0.6rem;
    background: #f4f6f9;
    border-left: 4px solid #6a8c3b;
    border-radius: 0 4px 4px 0;
}

.lsl-podcast-title {
    font-size: 0.88rem;
    font-weight: 700;
    color: #182b59;
    text-decoration: none;
    margin-bottom: 0.3rem;
    line-height: 1.3;
}

.lsl-podcast-title:hover {
    color: #6a8c3b;
    text-decoration: underline;
}

.lsl-podcast-date {
    font-size: 0.7rem;
    color: #3a3a5c;
    letter-spacing: 0.03em;
}

.lsl-no-podcasts {
    font-size: 0.85rem;
    color: #3a3a5c;
    font-style: italic;
}
