.modal-overlay{position:fixed;inset:0;z-index:9990;background:rgba(6,10,20,.72);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.modal-content{position:relative;z-index:9991;background:var(--color-neutral-0);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:560px;max-height:calc(100vh - var(--space-8));overflow-y:auto;overscroll-behavior:contain;padding:var(--space-8);scrollbar-width:thin;scrollbar-color:var(--color-divider-ui) transparent}.modal-content--sm{max-width:420px}.modal-content--md{max-width:560px}.modal-content--lg{max-width:720px;padding:var(--space-12)}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-divider-ui)}.modal-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-navy-dark);line-height:var(--line-height-tight);margin:0}.modal-subtitle{font-size:var(--font-size-small);color:var(--color-neutral-400);margin-top:var(--space-1)}.modal-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:var(--space-8);height:var(--space-8);border:1px solid var(--color-divider-ui);border-radius:var(--radius-md);background:transparent;cursor:pointer;color:var(--color-body-text);opacity:.6;transition:opacity var(--duration-fast) var(--easing-standard),background var(--duration-fast) var(--easing-standard)}.modal-close:hover{opacity:1;background:var(--color-neutral-100)}.modal-close:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:2px;opacity:1}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--color-divider-ui)}.modal-overlay[data-state=open]{animation:modal-overlay-in var(--duration-base) var(--easing-standard)}.modal-overlay[data-state=closed]{animation:modal-overlay-out var(--duration-fast) var(--easing-standard)}.modal-content[data-state=open]{animation:modal-content-in var(--duration-base) var(--easing-standard)}.modal-content[data-state=closed]{animation:modal-content-out var(--duration-fast) var(--easing-standard)}@keyframes modal-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes modal-overlay-out{to{opacity:0}}@keyframes modal-content-in{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes modal-content-out{to{opacity:0;transform:scale(.96)}}@media (prefers-reduced-motion:reduce){.modal-content[data-state=closed],.modal-content[data-state=open],.modal-overlay[data-state=closed],.modal-overlay[data-state=open]{animation:none}}@media (max-width:639px){.modal-overlay{align-items:flex-end;padding:0}.modal-content{border-bottom-left-radius:0;border-bottom-right-radius:0;max-height:90vh;padding:var(--space-6)}@keyframes modal-content-in{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}}