/* Theme-matched, native top-layer confirmations. No gameplay selectors. */
.site-dialog {
 box-sizing: border-box; width: min(540px, calc(100vw - 32px));
 max-height: min(86vh, 720px); max-height: min(86dvh, 720px);
 margin: auto; padding: 28px; overflow-y: auto; overscroll-behavior: contain;
 border: 1px solid #3c6477; border-radius: 22px;
 background: linear-gradient(145deg, #153247, #0c1e2e 65%);
 color: #edf7fb; color-scheme: dark;
 box-shadow: 0 24px 80px #0009, 0 1px 0 #a2f3d41a inset;
 font-family: inherit; text-align: left;
 animation: site-dialog-in 140ms ease-out;
}
.site-dialog::backdrop { background: #020b14c7; backdrop-filter: blur(5px); }
.site-dialog-heading { display: flex; gap: 14px; align-items: flex-start; margin-bottom: 22px; }
.site-dialog-mark { display: grid; place-items: center; flex: 0 0 44px; height: 44px; border-radius: 14px; border: 1px solid #53e2ad55; background: #53e2ad15; color: #8af0c9; font-size: 24px; font-weight: 800; }
.site-dialog-heading-copy { min-width: 0; }
.site-dialog .site-dialog-eyebrow { margin: 0 0 6px; color: #a2f3d4; font-size: 11px; line-height: 1.5; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; }
.site-dialog .site-dialog-title { margin: 0; color: #edf7fb; font-size: clamp(21px, 5vw, 27px); line-height: 1.2; letter-spacing: -.025em; overflow-wrap: anywhere; }
.site-dialog-body { color: #c5d7e2; font-size: 15px; line-height: 1.65; overflow-wrap: anywhere; }
.site-dialog-body p { margin: 0 0 12px; }
.site-dialog-body p:last-child { margin-bottom: 0; }
.site-dialog .site-dialog-warning { margin: 20px 0 0; padding: 12px 14px; border: 1px solid #eabd6540; border-radius: 11px; color: #f4d594; background: #eabd650d; font-size: 13px; line-height: 1.5; }
.site-dialog-actions { display: flex; gap: 10px; justify-content: flex-end; margin-top: 26px; }
.site-dialog-actions button { box-sizing: border-box; min-height: 46px; padding: 11px 18px; border: 1px solid #45677a; border-radius: 11px; font: inherit; font-size: 14px; line-height: 1.4; font-weight: 750; cursor: pointer; transition: background-color .12s, border-color .12s; }
.site-dialog-actions .site-dialog-cancel { background: #173447; color: #edf7fb; }
.site-dialog-actions .site-dialog-cancel:hover { background: #21495e; border-color: #7191a4; }
.site-dialog-actions .site-dialog-confirm { color: #072033; border-color: #79e3d1; background: linear-gradient(115deg, #55c9f3, #53e2ad); }
.site-dialog-actions .site-dialog-confirm:hover { background: linear-gradient(115deg, #88ddfa, #8af0c9); }
.site-dialog-danger .site-dialog-mark { color: #f4d594; border-color: #eabd6555; background: #eabd6515; }
.site-dialog-danger .site-dialog-confirm { color: #291b08; border-color: #f0cc82; background: #e7bd6b; }
.site-dialog-danger .site-dialog-confirm:hover { background: #f2d391; }
.site-dialog-actions button:focus-visible { outline: 3px solid #a8eaff; outline-offset: 3px; }
@keyframes site-dialog-in { from { opacity: 0; transform: translateY(8px) scale(.985); } to { opacity: 1; transform: none; } }
@media (max-width: 480px) { .site-dialog { padding: 23px 19px; border-radius: 18px; } .site-dialog-heading { gap: 11px; } .site-dialog-actions { flex-direction: column-reverse; } .site-dialog-actions button { width: 100%; min-height: 48px; } }
@media (prefers-reduced-motion: reduce) { .site-dialog { animation: none; } .site-dialog-actions button { transition: none; } .site-dialog::backdrop { backdrop-filter: none; } }
@media (forced-colors: active) { .site-dialog, .site-dialog-actions button, .site-dialog-warning, .site-dialog-mark { border: 1px solid CanvasText; } }
