/* Hidden interactions share the same sizing and layering as the main workspace. */
.nx-interface dialog.danger-confirm-modal {
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    margin: 0;
    padding: 12px;
    border: 0;
    border-radius: 0;
    background: transparent;
    backdrop-filter: none;
    box-sizing: border-box;
}
.nx-interface dialog.danger-confirm-modal:not([open]) { display: none; }
.nx-interface dialog.danger-confirm-modal[open] { display: flex; }
.nx-interface dialog.danger-confirm-modal::backdrop {
    background: rgb(3 8 14 / 76%);
    backdrop-filter: blur(6px);
}
.nx-interface .danger-confirm-dialog {
    width: min(440px, 100%);
    max-height: 100%;
    overflow: auto;
    color: #e5edf7;
    background: #101a27;
    border-color: #35475d;
}
.nx-interface .danger-confirm-body p { color: #bfccdc; line-height: 1.5; overflow-wrap: anywhere; }
.nx-interface .danger-confirm-actions { justify-content: flex-end; }
.nx-interface .danger-confirm-actions > button { min-height: 44px; min-width: 96px; border-radius: 8px; }
.nx-interface .danger-confirm-close { width: 40px; height: 40px; }

/* Fixed positioning is viewport-clamped in floating-panel.js. Popover-capable
   browsers additionally lift calendars out of clipping/stacking ancestors. */
.nx-interface [data-floating-panel] {
    position: fixed !important;
    inset: auto !important;
    left: var(--floating-left, 8px) !important;
    top: var(--floating-top, 8px) !important;
    width: var(--floating-width, 292px) !important;
    max-width: none !important;
    max-height: var(--floating-max-height, calc(100dvh - 16px)) !important;
    min-width: 0;
    margin: 0 !important;
    box-sizing: border-box;
    overflow: auto;
    overscroll-behavior: contain;
    z-index: 1200;
    color: #e5edf7;
    background: #101a27;
    border: 1px solid #35475d;
    box-shadow: 0 16px 48px rgb(0 0 0 / 45%);
}
.nx-interface [data-floating-panel]:not([data-floating-open]) { display: none !important; }
.nx-interface [data-floating-panel]::backdrop { background: transparent; }
.nx-interface dialog.floating-calendar-host {
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    transform: none;
    overflow: visible;
}
.nx-interface dialog.floating-calendar-host::backdrop { background: transparent; }

.nx-interface .casino-template-menu-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 44px;
    align-items: stretch;
    gap: 6px;
    min-width: 0;
}
.nx-interface .casino-template-menu-actions > button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    min-width: 0;
    height: auto;
    min-height: 44px;
    margin: 0;
    padding: 7px 9px;
    font-weight: 600;
    font-family: inherit;
    font-size: 14px;
    line-height: 1.2;
    white-space: normal;
    text-align: center;
}
.nx-interface .casino-template-menu-actions > .casino-template-menu-close {
    width: 44px;
    min-width: 44px;
    padding: 0;
    font-size: 22px;
}
.nx-interface [data-plan-site-note-error] {
    margin: 0;
    color: #ffb8c0;
    font-size: 14px;
    line-height: 1.5;
    overflow-wrap: anywhere;
}
.nx-interface [data-plan-site-note-error][hidden] { display: none; }
@media (max-width: 767px) {
    .nx-interface .casino-template-menu-form { grid-template-columns: minmax(0, 1fr); }
    .nx-interface .casino-template-menu-form > label { min-width: 0; }
    .nx-interface .casino-template-menu-actions > button { padding-inline: 4px; }
}
