Show the seating editor as a centered popup

Add Fluid.Popup, a centered dialog with the same open/close API as
Sheet: it scales in like the confirm alert, fades out in place, and
closes on backdrop tap or Escape with focus trapped inside. The host's
seating editor now uses it instead of a bottom sheet; its list scrolls
inside the popup on short screens.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
agomizi1cmandClaude Opus 5.5 committed 2026-10-23 12:19:10 +09:00
1 parent dd39c043c4
commit ed3d1e437e
4 files changed
+132 -13

No files matched your search

+38
View File
@@ -1026,6 +1026,44 @@ a {
letter-spacing: -0.015em;
}
/* ---------- ポップアップ(fluid.js の Popup): 画面の中央に出る大きめのダイアログ ---------- */
.popup-backdrop {
--appear: 1;
position: fixed;
inset: 0;
z-index: 30;
display: grid;
place-items: center;
padding: max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));
}
/* 暗さは現れ方に合わせて変わる */
.popup-backdrop::before {
content: "";
position: absolute;
inset: 0;
background: var(--scrim);
opacity: var(--appear);
}
.popup {
--bg-2: var(--sheet-cell);
position: relative;
width: min(440px, 100%);
max-height: 100%;
display: flex;
flex-direction: column;
overflow: hidden;
border-radius: 22px;
background: var(--sheet-bg);
box-shadow: var(--shadow-l), inset 0 0 0 0.5px var(--material-edge);
outline: none;
will-change: transform, opacity;
}
.popup-header {
flex: none;
padding: 16px 20px 6px;
text-align: center;
}
/* ---------- アラート(App.confirm): 少し大きい所から現れ、その場で消える ---------- */
.alert-backdrop {
--appear: 1;