/* Shared confirmation and message presentation; colours follow Site Appearance. */
dialog.cexam-site-dialog {
    box-sizing: border-box; width: min(620px, calc(100vw - 32px)); max-width: 620px;
    max-height: calc(100dvh - 40px); margin: auto; padding: 0; overflow: auto;
    border: 1px solid var(--cexam-primary-nav-border, #b0b9e3); border-radius: 24px;
    color: var(--cexam-page-ink, #213b56); background: var(--cexam-page-base, #f9fcff);
    box-shadow: 0 28px 90px rgb(25 43 78 / 22%); font: inherit; text-align: start;
}
dialog.cexam-site-dialog[open] { animation: cexam-dialog-enter .2s ease-out; }
dialog.cexam-site-dialog::backdrop, .cexam-site-dialog-backdrop { background: rgb(20 35 60 / 48%); backdrop-filter: blur(5px); }
.cexam-site-dialog-backdrop { position: fixed; inset: 0; z-index: 2147483645; }
dialog.cexam-site-dialog-fallback { position: fixed; inset: 0; z-index: 2147483646; height: fit-content; }
.cexam-site-dialog .cexam-site-dialog-head { display: flex; align-items: center; gap: 16px; padding: 26px 28px; background: var(--cexam-primary-nav-background, linear-gradient(135deg,#daeaff,#ddd8fb)); border-bottom: 1px solid var(--cexam-navbar-border, #dbe3f1); }
.cexam-site-dialog .cexam-site-dialog-symbol { display: grid; place-items: center; flex: 0 0 48px; height: 48px; border-radius: 16px; color: var(--cexam-ui-blue-ink,#fff); background: var(--cexam-ui-blue-background,#4564be); font-size: 28px; font-weight: 700; }
.cexam-site-dialog .cexam-site-dialog-eyebrow { display: block; color: var(--cexam-primary-nav-text,#245b87); font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; margin-bottom: 5px; }
.cexam-site-dialog h2#cexam-dialog-title { margin: 0; color: var(--cexam-title-colour,#3b3b84); font-size: 22px; line-height: 1.3; font-weight: 750; }
.cexam-site-dialog .cexam-site-dialog-message { padding: 26px 28px; white-space: pre-wrap; overflow-wrap: anywhere; font-size: 16px; line-height: 1.75; }
.cexam-site-dialog .cexam-site-dialog-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 12px; padding: 0 28px 26px; }
.cexam-site-dialog button { appearance: none; font: inherit; cursor: pointer; border: 1px solid transparent; text-decoration: none; transition: filter .18s, box-shadow .18s; }
.cexam-site-dialog .cexam-site-dialog-cancel, .cexam-site-dialog .cexam-site-dialog-continue { padding: 11px 22px; min-height: 46px; border-radius: 12px; font-size: 15px; font-weight: 700; width: auto; margin: 0; }
.cexam-site-dialog .cexam-site-dialog-cancel { color: var(--cexam-page-ink,#213b56); background: #eef3fc; border-color: var(--cexam-primary-nav-border,#b0b9e3); box-shadow: none; }
.cexam-site-dialog .cexam-site-dialog-continue { color: var(--cexam-ui-blue-ink,#fff); background: var(--cexam-ui-blue-background,#4564be); border-color: var(--cexam-ui-blue-border,#485aa6); box-shadow: var(--cexam-ui-blue-shadow,none); }
.cexam-site-dialog .cexam-site-dialog-close { margin-inline-start: auto; flex: 0 0 34px; width: 34px; height: 34px; padding: 0; border-radius: 50%; font-size: 26px; line-height: 1; color: var(--cexam-page-ink,#213b56); background: #ffffff99; box-shadow: none; }
.cexam-site-dialog button:hover { filter: brightness(.96); }
.cexam-site-dialog button:focus-visible { outline: 3px solid var(--cexam-ui-blue-focus,#9aaee5); outline-offset: 3px; }
.cexam-site-dialog [hidden] { display: none !important; }
@keyframes cexam-dialog-enter { from { opacity: 0; transform: translateY(10px) scale(.98); } to { opacity: 1; transform: none; } }
@media (max-width: 560px) { .cexam-site-dialog .cexam-site-dialog-head { padding: 20px; gap: 12px; } .cexam-site-dialog .cexam-site-dialog-message { padding: 20px; } .cexam-site-dialog .cexam-site-dialog-actions { padding: 0 20px 20px; } .cexam-site-dialog h2#cexam-dialog-title { font-size: 20px; } }
@media (prefers-reduced-motion: reduce) { dialog.cexam-site-dialog[open] { animation: none; } .cexam-site-dialog button { transition: none; } }
