.base-modal[data-v-40ad4ced]{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background-color:var(--bg-overlay);z-index:var(--z-modal);padding:var(--spacing-4);overflow-y:auto}.base-modal__dialog[data-v-40ad4ced]{background-color:var(--bg-card);border-radius:var(--radius-modal);box-shadow:var(--shadow-modal);width:100%;max-height:calc(100vh - var(--spacing-8));display:flex;flex-direction:column;overflow:hidden}.base-modal__dialog--sm[data-v-40ad4ced]{max-width:400px}.base-modal__dialog--md[data-v-40ad4ced]{max-width:600px}.base-modal__dialog--lg[data-v-40ad4ced]{max-width:800px}.base-modal__dialog--xl[data-v-40ad4ced]{max-width:1000px}.base-modal__dialog--full[data-v-40ad4ced]{max-width:calc(100vw - var(--spacing-8));max-height:calc(100vh - var(--spacing-8))}.base-modal__header[data-v-40ad4ced]{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-4) var(--spacing-5);border-bottom:var(--border-width-thin) solid var(--border-color-light);flex-shrink:0}.base-modal__title[data-v-40ad4ced]{font-family:var(--font-family-heading);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.base-modal__close[data-v-40ad4ced]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;background:transparent;color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base)}.base-modal__close[data-v-40ad4ced]:hover{background-color:var(--bg-hover);color:var(--text-primary)}.base-modal__body[data-v-40ad4ced]{flex:1;padding:var(--spacing-5);overflow-y:auto}.base-modal__footer[data-v-40ad4ced]{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-3);padding:var(--spacing-4) var(--spacing-5);border-top:var(--border-width-thin) solid var(--border-color-light);flex-shrink:0}.modal-enter-active[data-v-40ad4ced],.modal-leave-active[data-v-40ad4ced],.modal-enter-active .base-modal__dialog[data-v-40ad4ced],.modal-leave-active .base-modal__dialog[data-v-40ad4ced]{transition:all var(--transition-slow)}.modal-enter-from[data-v-40ad4ced],.modal-leave-to[data-v-40ad4ced]{opacity:0}.modal-enter-from .base-modal__dialog[data-v-40ad4ced],.modal-leave-to .base-modal__dialog[data-v-40ad4ced]{transform:scale(.95) translateY(-20px);opacity:0}
