.modal-overlay{z-index:1200;padding:var(--space-4);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#111827a6;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--bg-surface);border-radius:var(--radius-lg);width:100%;max-width:540px;max-height:90vh;box-shadow:0 25px 50px -12px #00000040, 0 0 0 1px var(--border-color);z-index:1201;flex-direction:column;animation:.2s ease-out slideUp;display:flex;position:relative}.modal-header{padding:var(--space-4);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;display:flex}.modal-title{color:var(--text-primary);margin:0;font-size:1.125rem;font-weight:600}.modal-close-btn{cursor:pointer;color:var(--text-secondary);padding:var(--space-1);border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;transition:background-color .15s,color .15s;display:flex}.modal-close-btn:hover{background-color:var(--bg-main);color:var(--text-primary)}.modal-body{padding:var(--space-4);overflow-y:auto}@media (width<=640px){.modal-overlay{align-items:flex-end;padding:0}.modal-content{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-width:100%;max-height:90dvh}.modal-header,.modal-body{padding:var(--space-3)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(1px)}}@media (width<=768px){.modal-close-btn{padding:var(--space-2)}}
