/*
 * Announcement format-toolbar list markers (Create + Document + guest Posted).
 * data-cc-ad-list survives HtmlSanitizer; dash is the default bullet style.
 *
 * Contract:
 * - Kill native markers (Bootstrap ul { padding-left:2rem } + disc) — they create
 *   a multi-space gap between the glyph and the text.
 * - ::before is ONLY the glyph; the single space is margin-right: 0.25em (~1ch).
 * - Hang (default): padding + negative text-indent so wraps align with text start.
 * - Default lists sit flush (marker at the left edge of the field).
 * - List body is weight 400; b/strong still bold when the user clicks B.
 */
.cc-ad-prose ul,
.cc-ad-editor ul,
.cc-doc-flow-field ul,
.job-tab-content [data-cc-job-translate-field] ul,
.job-right [data-cc-job-translate-field] ul,
ul[data-cc-ad-list],
.cc-ad-prose ol,
.cc-ad-editor ol,
.cc-doc-flow-field ol,
.job-tab-content [data-cc-job-translate-field] ol,
.job-right [data-cc-job-translate-field] ol,
ol[data-cc-ad-list] {
    list-style: none !important;
    list-style-type: none !important;
    list-style-position: outside !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
    margin-top: 0.25em;
    margin-bottom: 0.25em;
    white-space: normal !important;
}

.cc-ad-prose ul > li,
.cc-ad-editor ul > li,
.cc-doc-flow-field ul > li,
.job-tab-content [data-cc-job-translate-field] ul > li,
.job-right [data-cc-job-translate-field] ul > li,
ul[data-cc-ad-list] > li {
    margin-left: 0 !important;
    padding-left: 1em !important;
    text-indent: -1em !important;
    font-weight: 400 !important;
    white-space: normal !important;
}

.cc-ad-prose ol > li,
.cc-ad-editor ol > li,
.cc-doc-flow-field ol > li,
.job-tab-content [data-cc-job-translate-field] ol > li,
.job-right [data-cc-job-translate-field] ol > li,
ol[data-cc-ad-list] > li {
    margin-left: 0 !important;
    padding-left: 1.35em !important;
    text-indent: -1.35em !important;
    font-weight: 400 !important;
    white-space: normal !important;
}

.cc-ad-prose ul > li::before,
.cc-ad-editor ul > li::before,
.cc-doc-flow-field ul > li::before,
.job-tab-content [data-cc-job-translate-field] ul > li::before,
.job-right [data-cc-job-translate-field] ul > li::before,
.cc-ad-prose ol > li::before,
.cc-ad-editor ol > li::before,
.cc-doc-flow-field ol > li::before,
.job-tab-content [data-cc-job-translate-field] ol > li::before,
.job-right [data-cc-job-translate-field] ol > li::before,
ul[data-cc-ad-list] > li::before,
ol[data-cc-ad-list] > li::before {
    display: inline !important;
    margin: 0 0.25em 0 0 !important; /* exactly one space after the glyph */
    padding: 0 !important;
    border: 0 !important;
    float: none !important;
    position: static !important;
    width: auto !important;
    white-space: nowrap !important;
    font-weight: 400 !important;
    font-style: normal !important;
    letter-spacing: 0 !important;
}

.cc-ad-prose ul:not([data-cc-ad-list]) > li::before,
.cc-ad-editor ul:not([data-cc-ad-list]) > li::before,
.cc-doc-flow-field ul:not([data-cc-ad-list]) > li::before,
.job-tab-content [data-cc-job-translate-field] ul:not([data-cc-ad-list]) > li::before,
.job-right [data-cc-job-translate-field] ul:not([data-cc-ad-list]) > li::before,
ul[data-cc-ad-list="dash"] > li::before {
    content: "–";
}

ul[data-cc-ad-list="disc"] > li::before {
    content: "•";
}

ul[data-cc-ad-list="circle"] > li::before {
    content: "○";
}

ul[data-cc-ad-list="square"] > li::before {
    content: "■";
}

ol[data-cc-ad-list="decimal"],
.cc-ad-prose ol:not([data-cc-ad-list]),
.cc-ad-editor ol:not([data-cc-ad-list]),
.cc-doc-flow-field ol:not([data-cc-ad-list]),
.job-tab-content [data-cc-job-translate-field] ol:not([data-cc-ad-list]),
.job-right [data-cc-job-translate-field] ol:not([data-cc-ad-list]) {
    counter-reset: cc-ad-ol-decimal;
}

ol[data-cc-ad-list="decimal"] > li,
.cc-ad-prose ol:not([data-cc-ad-list]) > li,
.cc-ad-editor ol:not([data-cc-ad-list]) > li,
.cc-doc-flow-field ol:not([data-cc-ad-list]) > li,
.job-tab-content [data-cc-job-translate-field] ol:not([data-cc-ad-list]) > li,
.job-right [data-cc-job-translate-field] ol:not([data-cc-ad-list]) > li {
    counter-increment: cc-ad-ol-decimal;
}

ol[data-cc-ad-list="decimal"] > li::before,
.cc-ad-prose ol:not([data-cc-ad-list]) > li::before,
.cc-ad-editor ol:not([data-cc-ad-list]) > li::before,
.cc-doc-flow-field ol:not([data-cc-ad-list]) > li::before,
.job-tab-content [data-cc-job-translate-field] ol:not([data-cc-ad-list]) > li::before,
.job-right [data-cc-job-translate-field] ol:not([data-cc-ad-list]) > li::before {
    content: counter(cc-ad-ol-decimal) ".";
    font-variant-numeric: tabular-nums;
}

ol[data-cc-ad-list="decimal-paren"] {
    counter-reset: cc-ad-ol;
}

ol[data-cc-ad-list="decimal-paren"] > li {
    counter-increment: cc-ad-ol;
}

ol[data-cc-ad-list="decimal-paren"] > li::before {
    content: counter(cc-ad-ol) ")";
    font-variant-numeric: tabular-nums;
}

ol[data-cc-ad-list="upper-alpha"] {
    counter-reset: cc-ad-ol-ua;
}

ol[data-cc-ad-list="upper-alpha"] > li {
    counter-increment: cc-ad-ol-ua;
}

ol[data-cc-ad-list="upper-alpha"] > li::before {
    content: counter(cc-ad-ol-ua, upper-alpha) ".";
}

ol[data-cc-ad-list="lower-alpha-paren"] {
    counter-reset: cc-ad-ol-la;
}

ol[data-cc-ad-list="lower-alpha-paren"] > li {
    counter-increment: cc-ad-ol-la;
}

ol[data-cc-ad-list="lower-alpha-paren"] > li::before {
    content: counter(cc-ad-ol-la, lower-alpha) ")";
}

/* Edge wrap: wrapped lines return under the marker (left edge). */
ul[data-cc-ad-wrap="edge"] > li,
ol[data-cc-ad-wrap="edge"] > li {
    padding-left: 0 !important;
    text-indent: 0 !important;
}

/* Nested lists: small step only; still custom markers (never native disc/circle). */
.cc-ad-prose ul ul,
.cc-ad-prose ol ol,
.cc-ad-prose ul ol,
.cc-ad-prose ol ul,
.cc-ad-editor ul ul,
.cc-ad-editor ol ol,
.cc-ad-editor ul ol,
.cc-ad-editor ol ul,
.cc-doc-flow-field ul ul,
.cc-doc-flow-field ol ol,
.cc-doc-flow-field ul ol,
.cc-doc-flow-field ol ul,
.job-tab-content [data-cc-job-translate-field] ul ul,
.job-tab-content [data-cc-job-translate-field] ol ol,
.job-tab-content [data-cc-job-translate-field] ul ol,
.job-tab-content [data-cc-job-translate-field] ol ul,
.job-right [data-cc-job-translate-field] ul ul,
.job-right [data-cc-job-translate-field] ol ol,
.job-right [data-cc-job-translate-field] ul ol,
.job-right [data-cc-job-translate-field] ol ul,
ul[data-cc-ad-list] ul,
ul[data-cc-ad-list] ol,
ol[data-cc-ad-list] ul,
ol[data-cc-ad-list] ol {
    padding-left: 1.1em !important;
    margin: 0.1em 0;
    list-style: none !important;
    list-style-type: none !important;
}

/* Bold/italic/underline must win inside list items (li defaults to 400). */
.cc-ad-prose b,
.cc-ad-prose strong,
.cc-ad-editor b,
.cc-ad-editor strong,
.cc-doc-flow-field b,
.cc-doc-flow-field strong,
.job-tab-content [data-cc-job-translate-field] b,
.job-tab-content [data-cc-job-translate-field] strong,
.job-right [data-cc-job-translate-field] b,
.job-right [data-cc-job-translate-field] strong {
    font-weight: 700 !important;
}

.cc-ad-prose i,
.cc-ad-prose em,
.cc-ad-editor i,
.cc-ad-editor em,
.cc-doc-flow-field i,
.cc-doc-flow-field em,
.job-tab-content [data-cc-job-translate-field] i,
.job-tab-content [data-cc-job-translate-field] em,
.job-right [data-cc-job-translate-field] i,
.job-right [data-cc-job-translate-field] em {
    font-style: italic !important;
}

.cc-ad-prose u,
.cc-ad-editor u,
.cc-doc-flow-field u,
.job-tab-content [data-cc-job-translate-field] u,
.job-right [data-cc-job-translate-field] u {
    text-decoration: underline !important;
}

/* Align / spacing (data attrs survive HtmlSanitizer; inline style is stripped). */
[data-cc-ad-align="left"] { text-align: left; }
[data-cc-ad-align="center"] { text-align: center; }
[data-cc-ad-align="right"] { text-align: right; }
[data-cc-ad-align="justify"] { text-align: justify; }

[data-cc-ad-spacing="tight"] { line-height: 1.25; }
[data-cc-ad-spacing="normal"] { line-height: 1.5; }
[data-cc-ad-spacing="loose"] { line-height: 1.85; }
