diff --git a/src/uix/eidos/components/alert-dialog/alert-dialog-action.svelte b/src/uix/eidos/components/alert-dialog/alert-dialog-action.svelte
index 357091e4d..4295ec432 100644
--- a/src/uix/eidos/components/alert-dialog/alert-dialog-action.svelte
+++ b/src/uix/eidos/components/alert-dialog/alert-dialog-action.svelte
@@ -1,17 +1,56 @@
- {@render children?.()}
+ {#snippet child({ props, intent: dialogIntent })}
+ {#if outerChild}
+ {@render outerChild({ props, intent: dialogIntent })}
+ {:else}
+
+ {/if}
+ {/snippet}
diff --git a/src/uix/eidos/components/alert-dialog/alert-dialog-cancel.svelte b/src/uix/eidos/components/alert-dialog/alert-dialog-cancel.svelte
index 78f8a830c..19f3240c3 100644
--- a/src/uix/eidos/components/alert-dialog/alert-dialog-cancel.svelte
+++ b/src/uix/eidos/components/alert-dialog/alert-dialog-cancel.svelte
@@ -6,16 +6,50 @@
* confirmations). Render `Cancel` BEFORE `Action` in DOM order so
* the focus scope lands here first.
*
- * Pass-through over soma's ``. Visual treatment:
- * outline button, always neutral palette so it visually contrasts
- * with the (potentially destructive) Action.
+ * Renders an eidos `