
/*  ----------------------------------------------------------------------------
    EDITORIAL LIST MARKERS (site-wide)  —  added 2026-07-25

    A neutral 6px indigo dot, not a semantic icon. Body lists carry opposite
    meanings on the same page ("ideal for" / "not ideal for"), so a checkmark
    or arrow would be wrong half the time. Semantic ticks and crosses stay
    reserved for the pros/cons and worth-it/skip-it components.

    Scoped with the child combinator on purpose: editorial lists are direct
    children of the content wrapper, while component lists (pros/cons, TOC,
    ranked cards, menus) are nested deeper and keep their own markers.
    ---------------------------------------------------------------------------- */

:is(.msr-review-content, .dd-body) > ul,
:is(.tdb_single_content, .td-post-content) .tdb-block-inner > ul,
:is(.msr-review-content, .dd-body) > ul ul,
:is(.tdb_single_content, .td-post-content) .tdb-block-inner > ul ul {
    list-style: none;
    padding-left: 0;
}

:is(.msr-review-content, .dd-body) > ul > li,
:is(.tdb_single_content, .td-post-content) .tdb-block-inner > ul > li,
:is(.msr-review-content, .dd-body) > ul ul > li,
:is(.tdb_single_content, .td-post-content) .tdb-block-inner > ul ul > li {
    position: relative;
    padding-left: 26px;
    margin-bottom: 11px;
}

:is(.msr-review-content, .dd-body) > ul > li::before,
:is(.tdb_single_content, .td-post-content) .tdb-block-inner > ul > li::before,
:is(.msr-review-content, .dd-body) > ul ul > li::before,
:is(.tdb_single_content, .td-post-content) .tdb-block-inner > ul ul > li::before {
    content: "";
    position: absolute;
    left: 6px;
    top: 0.62em;          /* optical centre of the first line, not the box */
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #4f4c90;
}

/* nested sub-lists keep a visible indent */
:is(.msr-review-content, .dd-body) > ul ul,
:is(.tdb_single_content, .td-post-content) .tdb-block-inner > ul ul {
    padding-left: 26px;
    margin-top: 10px;
}
