.app-dialog-root{position:fixed;inset:0;z-index:400;display:flex;align-items:center;justify-content:center;padding:max(var(--space-5),env(safe-area-inset-top)) max(var(--space-5),env(safe-area-inset-right)) max(var(--space-5),env(safe-area-inset-bottom)) max(var(--space-5),env(safe-area-inset-left));opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease}.app-dialog-root--open{opacity:1;visibility:visible;pointer-events:auto}.app-dialog-root--open .app-dialog{transform:translateY(0) scale(1);opacity:1}.app-dialog-root--busy .app-dialog-backdrop{cursor:default}.app-dialog-backdrop{position:absolute;inset:0;margin:0;padding:0;border:none;cursor:pointer;background:var(--scrim-4);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.app-dialog{position:relative;z-index:1;width:min(27.5rem,90vw);max-width:90vw;display:flex;flex-direction:column;overflow:hidden;padding:0;border-radius:var(--radius-lg);border:1px solid var(--glass-border);background:linear-gradient(180deg,var(--background),var(--background));backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 20px 80px var(--scrim-3),inset 0 1px 0 var(--overlay-2);transform:translateY(var(--space-2)) scale(.985);opacity:0;transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .22s ease}.app-dialog:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at top left,var(--overlay-3),transparent 40%);pointer-events:none;z-index:0}.app-dialog>*{position:relative;z-index:1}.app-dialog__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-shrink:0;padding:var(--space-5) var(--space-6) var(--space-4);border-bottom:1px solid var(--border-faint)}.app-dialog__header-text{min-width:0;flex:1 1}.app-dialog__title-row{display:flex;align-items:center;gap:var(--space-2)}.app-dialog__title-icon{flex-shrink:0;color:var(--accent)}.app-dialog--warning .app-dialog__title-icon{color:var(--warning)}.app-dialog--danger .app-dialog__title-icon{color:var(--danger)}.app-dialog__title{margin:0;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:500;color:var(--text-primary);line-height:1.3}.app-dialog__close{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--space-6);height:var(--space-6);padding:0;border:1px solid var(--glass-border);border-radius:50%;background:var(--overlay-2);color:var(--text-faint);cursor:pointer;transition:color .18s ease,border-color .18s ease,background .18s ease}.app-dialog__close:hover:not(:disabled){color:var(--text-muted);border-color:var(--glass-border);background:var(--overlay-4)}.app-dialog__close:disabled{opacity:.45;cursor:not-allowed}.app-dialog__body{padding:var(--space-4) var(--space-6)}.app-dialog__message{margin:0;font-family:var(--font-sans);font-size:var(--text-sm);line-height:1.55;color:var(--text-muted);white-space:pre-wrap}.app-dialog__footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-shrink:0;padding:var(--space-3) var(--space-6) var(--space-5);border-top:1px solid var(--border-faint)}.app-dialog__footer--notice{justify-content:flex-end}.app-dialog__footer-right{display:flex;align-items:center;gap:var(--space-3);margin-left:auto}@media (max-width:767px){.app-dialog-root{align-items:flex-end;justify-content:stretch;padding:0 0 env(safe-area-inset-bottom,0)}.app-dialog{width:100%;max-width:100%;max-height:min(92dvh,40rem);border-radius:var(--radius-lg) var(--radius-lg) 0 0;transform:translateY(100%)}.app-dialog-root--open .app-dialog{transform:translateY(0);opacity:1}}@media (prefers-reduced-motion:reduce){.app-dialog,.app-dialog-root{transition:none!important}}