{liveAnnounce}
{#if unsaved.showUnsavedWarning} {/if}
unsaved.markDirty()} onblur={() => (titleTouched = true)} placeholder={m.geschichte_editor_title_placeholder()} aria-label={m.journey_title_aria_label()} aria-invalid={showTitleError} aria-describedby={showTitleError ? 'journey-title-error' : undefined} class="block w-full rounded border border-line bg-surface px-3 py-3 font-serif text-2xl font-bold text-ink placeholder:text-ink-3 focus:outline-none focus-visible:ring-2 focus-visible:ring-focus-ring" /> {#if showTitleError} {/if}

{m.journey_intro_save_hint()}

{#if showPublishedEmptyWarning}

{m.journey_published_empty_warning()}

{/if} {#if mutationError} {/if}
dragDrop.handlePointerMove(e)} onpointerup={() => dragDrop.handlePointerUp()} class="flex flex-col gap-2" > {#if items.length === 0}

{m.journey_empty_state()}

{/if} {#each items as item, i (item.id)}
dragDrop.handleGripDown(e, item.id)} class="transition-all duration-150 {dragDrop.draggedBlockId === item.id ? 'z-10 rounded-lg shadow-xl ring-2 ring-focus-ring/40' : ''}" style={dragDrop.draggedBlockId === item.id ? `transform: translateY(${dragDrop.dragOffsetY}px) scale(1.02); opacity: 0.9;` : ''} > {#if dragDrop.dropTargetIdx === i}
{/if} handleMoveUp(i)} onMoveDown={() => handleMoveDown(i)} onRemove={() => handleRemove(item.id)} onNotePatch={(note) => handleNotePatch(item.id, note)} />
{/each}

{isDraft ? m.geschichte_editor_save_hint_draft() : m.journey_save_hint_published()}

{#if isDraft} {:else} {/if}
{#if isDraft && !canPublish}

{m.journey_publish_disabled_hint()}

{/if}