/* Ordinary dialogs use the parent page's top layer, including over work frames. */
dialog.psh-app-dialog{position:fixed;inset:0;margin:auto!important;padding:0!important;width:min(440px,calc(100vw - 32px));height:fit-content;max-height:calc(100dvh - 32px);border:1px solid #c7d5ce;border-radius:12px;background:#fff;color:#243d33;box-shadow:0 20px 64px rgba(15,38,27,.22);font:14px/1.6 var(--ui-font,"Microsoft YaHei",sans-serif);overflow:hidden;box-sizing:border-box}
dialog.psh-app-dialog[open]{display:flex;flex-direction:column}
dialog.psh-app-dialog::backdrop{background:rgba(15,26,22,.45)}
.psh-app-dialog .psh-dialog-heading{display:flex;align-items:center;gap:10px;padding:20px 22px 10px;flex-shrink:0}
.psh-app-dialog .psh-dialog-heading img{width:28px;height:28px;object-fit:contain}
.psh-app-dialog .psh-dialog-heading h2{margin:0;padding:0;font:650 18px/1.4 var(--ui-font,"Microsoft YaHei",sans-serif);color:#243d33}
.psh-app-dialog .psh-dialog-message{padding:8px 22px 16px;white-space:pre-wrap;overflow-wrap:anywhere;overflow:auto;min-height:0;color:#334d42}
.psh-app-dialog .psh-dialog-input{box-sizing:border-box;margin:0 22px 16px;width:calc(100% - 44px);min-height:40px;padding:8px 10px;border:1px solid #aebfb6;border-radius:6px;font:inherit;background:#fff;color:#243d33;flex-shrink:0}
.psh-app-dialog [hidden]{display:none!important}
.psh-app-dialog .psh-dialog-actions{display:flex;justify-content:flex-end;gap:10px;padding:14px 22px 20px;flex-shrink:0;border-top:1px solid #e6ece8}
.psh-app-dialog .psh-dialog-actions button{min-width:76px;min-height:38px;margin:0;padding:7px 16px;border:1px solid #b7c8be;border-radius:6px;font:600 14px/1.4 var(--ui-font,"Microsoft YaHei",sans-serif);cursor:pointer;background:#fff;color:#365246}
.psh-app-dialog .psh-dialog-actions .psh-dialog-ok{background:var(--primary,#0f6e56);border-color:var(--primary,#0f6e56);color:#fff}
.psh-app-dialog .psh-dialog-actions .is-danger{background:var(--red,#bd352f);border-color:var(--red,#bd352f)}
.psh-app-dialog :is(button,input):focus-visible{outline:3px solid rgba(15,110,86,.28);outline-offset:2px}
/* The iframe keeps its browsing context and all original application controls. */
iframe.workspace-frame.psh-modal-frame{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;z-index:2147482000!important;background:transparent!important}
html.psh-modal-viewport{background:transparent!important;overflow:hidden!important}
html.psh-modal-viewport body{width:var(--psh-frame-width)!important;min-height:var(--psh-frame-height)!important;margin:var(--psh-frame-top) 0 0 var(--psh-frame-left)!important;background:transparent!important}
html.psh-modal-viewport body>.main{min-height:var(--psh-frame-height)!important}
html.psh-modal-viewport body::before{content:"";position:fixed;left:var(--psh-frame-left);top:var(--psh-frame-top);width:var(--psh-frame-width);height:var(--psh-frame-height);background:var(--ui-bg,#f5f7f9);z-index:-1;pointer-events:none}
html.psh-modal-viewport [data-psh-modal-ancestor]{background:transparent!important;box-shadow:none!important}
html.psh-modal-viewport [data-psh-background]{clip-path:var(--psh-background-clip)!important}
html.psh-modal-viewport .inbox-review:not([hidden]){top:var(--psh-frame-top)!important;left:var(--psh-frame-left)!important;right:auto!important;bottom:auto!important;width:var(--psh-frame-width)!important;height:var(--psh-frame-height)!important}
[data-psh-modal-open]{position:fixed!important;inset:0!important;margin:0!important;padding:16px!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;box-sizing:border-box}
[data-psh-modal-open]>:not(script):not(style){margin:0!important;min-width:0;box-sizing:border-box}
:where([data-psh-modal-open])>:where(:not(script):not(style)){max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto}
dialog:modal:not(.psh-app-dialog){position:fixed!important;inset:0!important;margin:auto!important;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto;box-sizing:border-box}
dialog:modal:not(.psh-app-dialog)::backdrop{background:rgba(15,26,22,.45)}
dialog:modal:not(.psh-app-dialog) .btn{background:#fff;border-color:var(--ui-border-strong,#aebfb6);color:var(--ui-text,#243d33)}
dialog:modal:not(.psh-app-dialog) .btn-primary{background:var(--primary,#0f6e56);border-color:var(--primary,#0f6e56);color:#fff}
@media(max-width:480px){.psh-app-dialog .psh-dialog-heading{padding:18px 18px 8px}.psh-app-dialog .psh-dialog-message{padding:8px 18px 16px}.psh-app-dialog .psh-dialog-actions{padding:12px 18px 16px}.psh-app-dialog .psh-dialog-actions button{min-height:44px}.psh-app-dialog .psh-dialog-input{margin-right:18px;margin-left:18px;width:calc(100% - 36px)}}
