.modal{width:min(var(--modal-width), calc(100vw - 2 * var(--space-4)));border-radius:var(--radius-lg);background:var(--color-surface);max-width:none;color:var(--color-text);box-shadow:var(--shadow-modal);animation:modal-enter var(--duration-enter) var(--ease-spring);border:0;outline:none;padding:0}.modal::backdrop{background:var(--color-backdrop);animation:modal-fade var(--duration-enter) ease}.modal__box{gap:var(--space-3);padding:var(--space-5);flex-direction:column;display:flex}.modal__icon{width:var(--modal-icon-size);height:var(--modal-icon-size);border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-accent);place-items:center;display:grid}.modal__icon svg{width:var(--modal-icon-glyph);height:var(--modal-icon-glyph)}.modal__title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-tight);margin:0;line-height:1.2}.modal__body{gap:var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-sm);flex-direction:column;display:flex}.modal__actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-2);display:flex}@keyframes modal-enter{0%{opacity:0;transform:scale(.96)}}@keyframes modal-fade{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.modal,.modal::backdrop{animation:none}}
