.dialog{padding:0;border:none;background:transparent;max-width:100vw;max-height:100dvh;margin:auto;overflow:visible}.dialog::backdrop{background:var(--color-scrim)}.dialog[open]{animation:dialog-in var(--duration-base) var(--ease-out)}.dialog[open]::backdrop{animation:dialog-backdrop-in var(--duration-base) var(--ease-out)}@keyframes dialog-in{0%{opacity:0;transform:translateY(4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes dialog-backdrop-in{0%{opacity:0}to{opacity:1}}.dialog-panel{width:480px;max-width:calc(100vw - var(--space-8));background:var(--color-bg-elevated);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg),var(--shadow-ring);display:flex;flex-direction:column;max-height:calc(100dvh - var(--space-10))}.dialog[data-size=md] .dialog-panel{width:640px}.dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-5) var(--space-5) 0}.dialog-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-normal);color:var(--color-fg)}.dialog-description{margin-top:var(--space-1);font-size:var(--text-sm);color:var(--color-fg-muted)}.dialog-close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin:-4px -6px 0 0;border-radius:var(--radius-md);color:var(--color-fg-subtle);transition:background var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease)}.dialog-close:hover{background:var(--color-bg-muted);color:var(--color-fg)}.dialog-close:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.dialog-body{padding:var(--space-4) var(--space-5);font-size:var(--text-sm);color:var(--color-fg-muted);overflow-y:auto}.dialog-footer{display:flex;justify-content:flex-end;gap:var(--space-2);padding:var(--space-4) var(--space-5) var(--space-5);position:relative}.dialog-footer:before{content:"";position:absolute;top:0;left:var(--space-5);right:var(--space-5);height:1px;background:var(--color-border-subtle)}