.ui-dialog__trigger{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-primary-fg);background:var(--color-primary);border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease)}.ui-dialog__trigger:hover{background:var(--color-primary-hover)}.ui-dialog__overlay{position:fixed;inset:0;z-index:var(--z-overlay);background:var(--color-overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.ui-dialog__overlay[data-state=open]{animation:ui-dialog-overlay-in var(--duration) var(--ease)}.ui-dialog__overlay[data-state=closed]{animation:ui-dialog-overlay-out var(--duration) var(--ease)}.ui-dialog__content{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:var(--z-modal);width:min(92vw,480px);max-height:85vh;overflow-y:auto;padding:var(--space-6);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}.ui-dialog__content:focus{outline:none}.ui-dialog__content[data-state=open]{animation:ui-dialog-content-in var(--duration) var(--ease)}.ui-dialog__content[data-state=closed]{animation:ui-dialog-content-out var(--duration) var(--ease)}.ui-dialog__title{font-size:var(--text-lg);font-weight:var(--weight-semibold)}.ui-dialog__description{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted)}.ui-dialog__body{margin-top:var(--space-4);font-size:var(--text-sm)}.ui-dialog__close{margin-top:var(--space-6);display:inline-flex;align-items:center;padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer}.ui-dialog__close:hover{background:var(--color-border)}@keyframes ui-dialog-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes ui-dialog-overlay-out{0%{opacity:1}to{opacity:0}}@keyframes ui-dialog-content-in{0%{opacity:0;transform:translate(-50%,-48%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes ui-dialog-content-out{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-48%) scale(.96)}}@media(prefers-reduced-motion:reduce){.ui-dialog__content,.ui-dialog__overlay{animation:none}}
