/* Standalone styles also used by public booking, kiosk and print pages. */
.qms-message-dialog { position: fixed; inset: 0; margin: auto; width: min(440px, calc(100vw - 32px)); height: fit-content; max-width: none; max-height: calc(100dvh - 32px); padding: 0; border: 1px solid #dfe5ef; border-radius: 12px; background: #fff; color: #26344d; box-shadow: 0 20px 70px #17244040; font: 14px/1.6 'Roboto', 'Segoe UI', Arial, sans-serif; text-align: left; overflow-y: auto; }
.qms-message-dialog, .qms-message-dialog * { box-sizing: border-box; }
.qms-message-dialog::backdrop { background: #17244066; }
.qms-message-header { display: flex; align-items: center; gap: 10px; padding: 14px 18px; border-bottom: 1px solid #e2e7f0; }
.qms-message-header h2 { flex: 1; margin: 0; padding: 0; color: #26344d; font: 500 16px/1.5 'Roboto', 'Segoe UI', Arial, sans-serif; text-transform: none; }
.qms-message-icon { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 26px; height: 26px; border-radius: 50%; background: #edf1ff; color: #4e66df; font-weight: 600; }
.qms-message-dialog[data-tone=warning] .qms-message-icon { color: #926216; background: #fff3d9; }
.qms-message-dialog[data-tone=danger] .qms-message-icon { color: #b74450; background: #fcebee; }
.qms-message-dialog .qms-message-close { flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; min-height: 0; padding: 0; margin: 0; border: 0; border-radius: 6px; background: transparent; color: #728099; font: 24px/1 Arial, sans-serif; cursor: pointer; }
.qms-message-close:hover { background: #f1f4fa; }
.qms-message-content { padding: 16px 18px; }
.qms-message-content p { margin: 0; padding: 0; white-space: pre-line; overflow-wrap: anywhere; color: #46516a; font: inherit; text-transform: none; }
.qms-message-footer { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; padding: 10px 18px; border-top: 1px solid #e2e7f0; background: #fafbfe; }
.qms-message-dialog .qms-message-footer button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; width: auto; height: 32px; min-height: 0; margin: 0; padding: 4px 12px; border: 1px solid #d8dfec; border-radius: 6px; background: #fff; color: #46516a; font: 400 13px/1.5 'Roboto', 'Segoe UI', Arial, sans-serif; cursor: pointer; text-transform: none; }
.qms-message-dialog .qms-message-footer .qms-message-accept { border-color: #5066dd; background: #5066dd; color: #fff; }
.qms-message-dialog[data-tone=danger] .qms-message-footer .qms-message-accept { border-color: #bd4b54; background: #bd4b54; }
.qms-message-dialog button:focus-visible { outline: 2px solid #5066dd; outline-offset: 2px; }
.qms-message-dialog .qms-message-footer button[hidden] { display: none; }
.qms-message-footer button svg { width: 14px; height: 14px; flex-shrink: 0; }
@media print { .qms-message-dialog { display: none !important; } }
