.app-dialog{position:fixed;inset:0;box-sizing:border-box;width:calc(100% - 40px);max-width:360px;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);margin:auto;overflow:auto;padding:24px;border:0;border-radius:8px;background:#fff;color:#333;box-shadow:0 12px 40px #0003;font-family:"PingFang SC","Helvetica Neue",Arial,sans-serif;letter-spacing:0}
.app-dialog::backdrop{background:#0007}
.app-dialog[open]{display:flex;flex-direction:column}
.app-dialog h2{margin:0 0 14px;font-size:18px;line-height:1.5;font-weight:600;text-align:center;color:#1765ac;overflow-wrap:anywhere}
.app-dialog h2,.app-dialog-actions{flex-shrink:0}
.app-dialog p{min-height:0;overflow:auto;margin:0;font-size:15px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}
.app-dialog-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.app-dialog-actions button{box-sizing:border-box;flex:1;min-width:110px;min-height:44px;padding:11px 10px;border:1px solid #d7e6f7;border-radius:6px;background:#f1f6fc;color:#1765ac;font-family:inherit;font-size:14px;line-height:1.5;cursor:pointer;overflow-wrap:anywhere}
.app-dialog-actions .app-dialog-primary{background:#2563eb;color:#fff;border-color:#2563eb}
.app-dialog button:focus{outline:none}
.app-dialog.app-dialog-keyboard button:focus{outline:2px solid #2563eb;outline-offset:3px}
html.app-dialog-open{overflow:hidden}
.app-dialog-close{position:absolute;right:8px;top:5px;width:32px;height:32px;padding:0;border:0;background:none;color:#777;font-size:25px;line-height:32px;cursor:pointer}
.app-dialog-close[hidden]{display:none}
.app-toast{position:fixed;inset:auto;top:40%;left:50%;transform:translate(-50%,-50%);box-sizing:border-box;width:max-content;max-width:min(80%,360px);max-height:40vh;max-height:40dvh;margin:0;padding:12px 18px;overflow:auto;border:0;border-radius:6px;background:rgba(35,35,35,.92);color:#fff;box-shadow:0 3px 14px #0002;font-family:"PingFang SC","Helvetica Neue",Arial,sans-serif;font-size:14px;line-height:1.7;letter-spacing:0;white-space:pre-wrap;overflow-wrap:anywhere;text-align:center;z-index:1000000}
.app-toast[hidden]{display:none!important}
.app-toast{text-wrap:balance}
.app-toast::backdrop{background:transparent;pointer-events:none}
@media print{.app-dialog,.app-toast{display:none!important}}
