.morviale-dialog { box-sizing:border-box; width:min(480px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); overflow:auto; margin:auto; padding:28px; border:1px solid #b18d50; border-radius:12px; background:#fffdfa; color:#182622; box-shadow:0 24px 100px #0005; font-family:var(--font-sans, sans-serif); }
.morviale-dialog::backdrop { background:#091310d9; backdrop-filter:blur(4px); }
.morviale-dialog-brand { color:#826432; letter-spacing:.2em; font-size:11px; font-weight:700; margin-bottom:14px; }
.morviale-dialog h2 { margin:0 0 16px; font:500 30px/1.12 var(--font-serif,serif); color:#15241f; }
.morviale-dialog-message { margin:0; font-size:14px; line-height:1.65; white-space:pre-line; overflow-wrap:anywhere; }
.morviale-dialog-actions { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:10px; margin-top:24px; }
.morviale-dialog-actions button { min-height:46px; padding:10px 20px; border:1px solid #b3bbb7; border-radius:5px; background:#fff; color:#243b32; font:600 14px/1.3 var(--font-sans,sans-serif); cursor:pointer; }
.morviale-dialog-actions .morviale-dialog-primary { border-color:#135b46; background:#135b46; color:#fff; }
.morviale-dialog button:focus-visible { outline:3px solid #b18d50; outline-offset:3px; }
.morviale-progress { height:9px; border-radius:9px; overflow:hidden; background:#e5e9e4; margin:20px 0; }
.morviale-progress > div { height:100%; background:#a6844e; transition:width .15s linear; border-radius:9px; }
.morviale-progress.is-waiting > div { animation:morviale-wait 1.6s ease-in-out infinite alternate; }
.morviale-progress-detail { font-size:12px; color:#4c6056; line-height:1.6; margin:8px 0 0; }
.morviale-progress-warning { border-left:3px solid #a6844e; background:#f2ece0; padding:12px; margin:0; font-size:12px; line-height:1.65; color:#54432a; }
body:has(.morviale-dialog[open]) { overflow:hidden; }
@keyframes morviale-wait { to { transform:translateX(185%); } }
@media(max-width:480px) { .morviale-dialog { padding:22px; } .morviale-dialog h2 { font-size:27px; } .morviale-dialog-actions button { flex:1; } }
@media(prefers-reduced-motion:reduce) { .morviale-progress > div { transition:none; animation:none!important; } }
