/* Explicit fixed positioning overrides the old relative dialog rule. */
.dialog{
 position:fixed;
 left:var(--dialog-center-x,50%);top:var(--dialog-center-y,50%);
 right:auto;bottom:auto;margin:0;transform:translate(-50%,-50%);
 width:calc(var(--dialog-width,100vw) - 32px);max-width:490px;
 max-height:calc(var(--dialog-height,100dvh) - 32px);
 overflow:hidden;overscroll-behavior:contain;
}
.dialog[open]{display:flex;flex-direction:column}
.dialog-header,.dialog-footer{flex:none}
.dialog-header{padding-bottom:15px;border-bottom:1px dashed #d8c7aa}
.dialog-header>.icon-button{min-width:40px;min-height:40px;margin:-5px -9px 0 0;flex:none}
.dialog-title:focus{outline:none}
.dialog-body{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scroll-padding-block:16px}
html.dialog-open,body.dialog-open{overflow:hidden;overscroll-behavior:none}
body.dialog-open{padding-right:var(--dialog-scrollbar-gap,0px)}
@media(max-width:760px){
 .dialog{width:calc(var(--dialog-width,100vw) - 24px);max-height:calc(var(--dialog-height,100dvh) - 24px)}
 .dialog-header{padding:16px 17px 12px}.dialog-title{font-size:18px}
 .dialog-description{margin-top:5px;line-height:1.65}
 .dialog-body{padding:17px}.dialog-footer{padding:12px 17px 15px;flex-wrap:wrap}
 .dialog input,.dialog select,.dialog textarea{font-size:16px}
 .dialog-footer>.button{flex:1 1 auto}
}
@media(max-height:480px){
 .dialog-header{padding:10px 15px 8px}.dialog-title{font-size:16px}
 .dialog-description{margin-top:3px;line-height:1.5}
 .dialog-body{padding:12px 15px}.dialog-footer{padding:9px 15px}
}
