.reorder-toolbar { text-align:center; color:var(--text-dim); font-size:12px; margin: -24px 0 24px; }
.reorder-toolbar[hidden], [hidden] { display:none !important; }
.owner-button { color:var(--text-dim); background:none; border:0; font:inherit; cursor:pointer; text-decoration:underline; padding:8px; }
.reorder-handle { position:absolute; top:2px; left:2px; width:28px; height:28px; padding:0; border:0; border-radius:8px; color:var(--text-faint); background:transparent; font-size:23px; cursor:grab; touch-action:none; opacity:.8; }
.card:hover .reorder-handle, .reorder-handle:focus-visible { opacity:1; color:var(--accent); }
.can-reorder .card { -webkit-touch-callout:none; }
.can-reorder .card a { -webkit-touch-callout:default; }
.is-reordering { user-select:none; -webkit-user-select:none; cursor:grabbing; }
#grid .card.reorder-placeholder { outline:2px dashed var(--accent); opacity:.25; transform:none; }
.card.reorder-ghost { position:fixed; left:0; top:0; z-index:1000; margin:0; pointer-events:none; transform-origin:top left; box-shadow:0 14px 34px #0005; border-color:var(--accent); transition:none; }
.owner-dialog { width:min(440px,calc(100% - 32px)); padding:24px; border:1px solid var(--card-border); border-radius:var(--radius); background:var(--card); color:var(--text); }
.owner-dialog::backdrop { background:#0007; }
.owner-dialog h2 { margin:0 0 12px; font-size:20px; }
.owner-dialog p { color:var(--text-dim); font-size:13px; line-height:1.5; }
.owner-dialog input { display:block; width:100%; margin:8px 0 16px; padding:10px; border:1px solid var(--card-border); border-radius:6px; color:var(--text); background:var(--bg); }
.owner-dialog button[type=submit] { padding:10px 16px; border:1px solid var(--accent-dim); border-radius:6px; color:var(--text); background:var(--bg-elev); cursor:pointer; }
button:focus-visible, input:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }

.owner-dialog { max-height:calc(100dvh - 32px); overflow:auto; }
.owner-dialog h3 { font-size:16px; margin:0 0 8px; }
.owner-dialog input { min-height:48px; font:inherit; font-size:16px; }
.owner-dialog button { min-height:44px; font:inherit; }
.owner-dialog button[type=submit] { width:100%; min-height:48px; font-size:16px; }
.owner-dialog button:disabled { cursor:default; opacity:.55; }
.owner-secondary-actions { display:flex; flex-wrap:wrap; justify-content:space-between; gap:4px; margin-top:8px; }
#owner-code { font-family:ui-monospace,monospace; font-size:24px; letter-spacing:.3em; }
#owner-sent-email { overflow-wrap:anywhere; }
#owner-message:empty { display:none; }
