/**
 * List block structural styles.
 * Dynamic color, font-size, and icon color use inline styles / CSS variables.
 *
 * Checklist icon defaults to currentColor (same as list text). Custom color via
 * --lb-list-icon-color. Selectors must beat text-editor's
 * `[data-text-editing="true"] li { display: list-item }` so flex gap works.
 */

.lb-page-content .lb-list,
.lb-builder-canvas .lb-list {
    line-height: 1.8;
    margin: 0;
}

.lb-page-content .lb-list:not(.lb-list-check),
.lb-builder-canvas .lb-list:not(.lb-list-check) {
    padding-left: 24px;
}

.lb-page-content .lb-list-check,
.lb-builder-canvas .lb-list-check,
.lb-builder-canvas [data-text-editing="true"] .lb-list-check {
    list-style: none;
    padding-left: 0;
}

.lb-page-content .lb-list li,
.lb-builder-canvas .lb-list li {
    margin-bottom: 8px;
}

.lb-page-content .lb-list-check-item,
.lb-builder-canvas .lb-list-check-item,
.lb-builder-canvas [data-text-editing="true"] .lb-list-check-item {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    list-style: none;
}

.lb-page-content .lb-list-check-icon,
.lb-builder-canvas .lb-list-check-icon,
.lb-builder-canvas [data-text-editing="true"] .lb-list-check-icon {
    color: var(--lb-list-icon-color, currentColor);
    flex-shrink: 0;
}

.lb-builder-canvas [data-text-editing="true"] .lb-list-check-item {
    margin-bottom: 4px;
}

.lb-builder-canvas [data-text-editing="true"] .lb-list-check-icon {
    user-select: none;
}
