html:has(.app-dialog[open]){overflow:hidden}.app-dialog{--dialog-max-height:calc(var(--visual-height,100dvh) - 48px);inset:auto 0;top:calc(var(--visual-top,0px) + var(--visual-height,100dvh)/2);width:min(580px,100% - 32px);max-width:100%;max-height:var(--dialog-max-height);border:1px solid var(--line);color:var(--ink);background:#fffdf9;border-radius:24px;margin:0 auto;padding:0;position:fixed;overflow:hidden;transform:translateY(-50%);box-shadow:0 24px 80px #27193833}.app-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#21152e80}.app-dialog-inner{max-height:calc(var(--dialog-max-height) - 2px);flex-direction:column;min-height:0;display:flex}.app-dialog-heading{background:#fffdf9;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:24px;display:flex}.app-dialog-heading h2{font-size:20px}.app-dialog-heading button{width:44px;height:44px;color:var(--brand);background:#eee5f5;border-radius:14px;flex-shrink:0;place-items:center;display:grid}.app-dialog-content{overscroll-behavior:contain;min-height:0;padding:0 24px 24px;scroll-padding-block:12px;font-size:16px;line-height:2;overflow:auto}.app-dialog-content p{margin-block:12px}.app-dialog-content ol,.app-dialog-content ul{padding-inline-start:24px}.app-dialog-content li{margin-bottom:12px}.app-dialog-content>div>h2{margin-bottom:16px;font-size:20px}.app-dialog-content details{margin-block:16px}.app-dialog-content summary{cursor:pointer;min-height:44px}.app-dialog .app-dialog-content .aside-box,.app-dialog .app-dialog-content .dooz-guide,.app-dialog .app-dialog-content .pantomime-guide,.app-dialog .app-dialog-content .spy-guide{background:0 0;border:0;margin:0;padding:0}.app-dialog button:focus-visible,.app-dialog summary:focus-visible{outline-offset:3px;outline:3px solid #9676b3}@media (width<=600px){.app-dialog{--dialog-max-height:calc(var(--visual-height,100dvh) - max(24px, env(safe-area-inset-top)));top:calc(var(--visual-top,0px) + var(--visual-height,100dvh));border-radius:24px 24px 0 0;width:100%;transform:translateY(-100%)}.app-dialog-heading{padding:20px}.app-dialog-content{padding:0 20px max(24px,env(safe-area-inset-bottom))}}@media print{.app-dialog{display:none!important}}
