/* Echo UI: dialogs, popovers and disclosures. */
html.ui-dialog-open,
body.ui-dialog-open { overscroll-behavior: none; }
.ui-dialog { position: fixed; inset: 0; z-index: 50; display: flex; align-items: center; justify-content: center; padding: var(--ui-space-8); overflow: hidden; overscroll-behavior: none; touch-action: none; background: rgba(12, 14, 20, .58); backdrop-filter: blur(4px); }
.ui-dialog[hidden],
.ui-dialog.hidden { display: none; }
.ui-dialog__panel { width: min(680px, 92vw); max-height: calc(100vh - 40px); overflow: auto; overscroll-behavior: contain; touch-action: pan-y; padding: 18px; border: 1px solid var(--ui-color-border-strong); border-radius: var(--ui-radius); background: var(--ui-color-surface-raised); box-shadow: var(--ui-shadow-overlay), inset 0 1px 0 var(--ui-color-edge-highlight); }
.ui-dialog__actions { display: flex; gap: var(--ui-space-4); justify-content: flex-end; flex-wrap: wrap; margin-top: var(--ui-space-5); }
.ui-popover { position: absolute; z-index: 40; border: 1px solid var(--ui-color-border-strong); border-radius: var(--ui-radius-sm); background: var(--ui-color-surface); box-shadow: var(--ui-shadow-soft); }
.ui-disclosure > summary { list-style: none; cursor: pointer; }
.ui-disclosure > summary::-webkit-details-marker { display: none; }
