Make the remove confirm name the stake and take a thumb

The one irreversible path was defended with 40px buttons 8px apart and a
question — "Remove this?" — that never said what was leaving or what it cost.

Confirm buttons go to 46px with a 12px gap (all three rows), and the remove
question names the series and the loss. The row wraps, so a long title takes
the width it needs instead of overflowing; verified at 320 and 390 in both
themes with a 90-character title.

Button order is unchanged: the group is right-aligned with Cancel outermost, so
the destructive button already sits further from a right thumb's arc than
Cancel does, and all three rows keep the same shape.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-30 19:07:05 +07:00
parent bef1469413
commit 07b075f04a
2 changed files with 7 additions and 4 deletions
+6 -3
View File
@@ -524,14 +524,17 @@ button { cursor: pointer; }
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
flex-wrap: wrap;
gap: 12px; gap: 12px;
padding: 14px; padding: 14px;
background: var(--danger-wash); background: var(--danger-wash);
} }
.confirm-row span { font: 400 17px var(--font-display); color: var(--danger-soft); } /* The remove question names the series, so it has to be able to take the row
.confirm-row div { display: flex; gap: 8px; } to itself and push the buttons onto their own line. */
.confirm-row span { flex: 1 1 16ch; font: 400 17px/1.3 var(--font-display); color: var(--danger-soft); }
.confirm-row div { display: flex; flex: none; gap: 12px; margin-left: auto; }
.confirm-row button { .confirm-row button {
height: 40px; height: 46px;
padding: 0 14px; padding: 0 14px;
border: 1px solid var(--field-line); border: 1px solid var(--field-line);
background: transparent; background: transparent;
+1 -1
View File
@@ -122,7 +122,7 @@
</div> </div>
{{end}} {{end}}
<div class="confirm-row" id="confirm-remove-{{.Key}}" role="group" aria-live="polite" hidden> <div class="confirm-row" id="confirm-remove-{{.Key}}" role="group" aria-live="polite" hidden>
<span>Remove this?</span> <span>Remove “{{.Title}}”? Chapter progress is lost.</span>
<div> <div>
<button class="danger-solid" <button class="danger-solid"
hx-delete="/ui/bookmarks/{{.Key}}" hx-delete="/ui/bookmarks/{{.Key}}"