.modal-backdrop{z-index:var(--z-modal,1000);padding:var(--spacing-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-backdrop[data-state=open]{animation:modal-backdrop-in var(--transition-normal) forwards}.modal-backdrop[data-state=closed]{animation:modal-backdrop-out var(--transition-normal) forwards;pointer-events:none}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;background:#070b14cc;position:absolute;inset:0}.modal{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-height:90vh;display:flex;position:relative;box-shadow:0 24px 64px #0009,inset 0 0 0 1px #ffffff0a}[data-state=open] .modal{animation:modal-slide-in var(--transition-normal) cubic-bezier(.22, 1, .36, 1) forwards}[data-state=closed] .modal{animation:modal-slide-out var(--transition-normal) ease-in forwards}.modal__header{justify-content:space-between;align-items:flex-start;gap:var(--spacing-4);padding:var(--spacing-5) var(--spacing-6);border-bottom:1px solid var(--color-border-subtle);flex-shrink:0;display:flex}.modal__title-group{gap:var(--spacing-1);flex-direction:column;min-width:0;display:flex}.modal__title{font-family:var(--font-display);color:var(--color-text-primary);margin:0;font-size:1rem;font-weight:700;line-height:1.3}.modal__description{font-family:var(--font-body);color:var(--color-text-secondary);margin:0;font-size:.8125rem;line-height:1.5}.modal__close-btn{border:1px solid var(--color-border-default);border-radius:var(--radius-xs);width:32px;height:32px;color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast);background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.modal__close-btn:hover{color:var(--color-text-primary);border-color:var(--color-text-muted);background:var(--color-bg-elevated)}.modal__close-btn:focus-visible{outline:2px solid var(--color-accent-gold);outline-offset:2px}.modal__close-btn svg{pointer-events:none}.modal__body{padding:var(--spacing-6);scrollbar-width:thin;scrollbar-color:var(--color-border-default) #0000;flex:1;overflow-y:auto}.modal__body::-webkit-scrollbar{width:4px}.modal__body::-webkit-scrollbar-track{background:0 0}.modal__body::-webkit-scrollbar-thumb{background:var(--color-border-default);border-radius:2px}.modal__footer{justify-content:flex-end;align-items:center;gap:var(--spacing-3);padding:var(--spacing-4) var(--spacing-6);border-top:1px solid var(--color-border-subtle);flex-shrink:0;display:flex}@keyframes modal-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes modal-backdrop-out{0%{opacity:1}to{opacity:0}}@keyframes modal-slide-in{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes modal-slide-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(8px)scale(.98)}}
