Dragging a block to reorder it within (or into) a column shows no visible drop-indicator line during the drag — the reorder itself still works (it's driven by component state, not CSS), but the drag feedback silently disappears, unlike the polished accent-colored indicator the Document's top-level flow shows for the same interaction.
The root cause is a Svelte scoped-CSS mismatch: .drop-indicator's only style definition lives in src/routes/space/[spaceId]/doc/[id]/+page.svelte's own <style> block. Svelte's automatic style scoping stamps a per-component hash class onto both that rule and every element +page.svelte's own template renders — but src/lib/components/ColumnsBlock.svelte renders its own <div class="drop-indicator"> at two spots (between column blocks, and after the last one) from a different component with no <style> block of its own, so the compiled .drop-indicator.svelte-xxxxx selector never matches those elements.
This predates #239 (present since #148 introduced ColumnsBlock.svelte) and was noticed but deliberately left unchanged while extracting BlockRow.svelte in #239, since that PR's scope excluded drop-indicator rendering and any behavior change.
Done when: dragging a block to reorder it inside a column, or across columns, shows the drop-indicator line at the correct position, matching the top-level Document flow's existing behavior.
Dragging a block to reorder it within (or into) a column shows no visible drop-indicator line during the drag — the reorder itself still works (it's driven by component state, not CSS), but the drag feedback silently disappears, unlike the polished accent-colored indicator the Document's top-level flow shows for the same interaction.
The root cause is a Svelte scoped-CSS mismatch:
.drop-indicator's only style definition lives insrc/routes/space/[spaceId]/doc/[id]/+page.svelte's own<style>block. Svelte's automatic style scoping stamps a per-component hash class onto both that rule and every element+page.svelte's own template renders — butsrc/lib/components/ColumnsBlock.svelterenders its own<div class="drop-indicator">at two spots (between column blocks, and after the last one) from a different component with no<style>block of its own, so the compiled.drop-indicator.svelte-xxxxxselector never matches those elements.This predates #239 (present since #148 introduced
ColumnsBlock.svelte) and was noticed but deliberately left unchanged while extractingBlockRow.sveltein #239, since that PR's scope excluded drop-indicator rendering and any behavior change..drop-indicatorrenders visibly wherever it's used inside a column — either promote the rule to:global(.drop-indicator)inColumnsBlock.svelte, or duplicate the rule in a<style>block there.Done when: dragging a block to reorder it inside a column, or across columns, shows the drop-indicator line at the correct position, matching the top-level Document flow's existing behavior.