.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1f3f3c8c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px;animation:overlayFade .18s ease-out}@keyframes overlayFade{0%{opacity:0}to{opacity:1}}.modal-dialog{background:#fff;border-radius:var(--radius-lg);width:100%;max-height:calc(100vh - 32px);display:flex;flex-direction:column;box-shadow:0 30px 80px #1f3f3c4d;animation:dialogRise .22s cubic-bezier(.2,.9,.3,1);overflow:hidden}.modal-md{max-width:520px}.modal-lg{max-width:920px}@keyframes dialogRise{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 18px 14px;border-bottom:1px solid rgba(42,86,81,.1)}.modal-header h3{font-size:1.1rem}.modal-header h3{font-family:Epilogue,sans-serif;font-size:1.25rem;font-weight:800;color:var(--green-deep);margin:0}.modal-close{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:transparent;border:1.5px solid rgba(42,86,81,.2);color:var(--green-deep);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .2s ease,color .2s ease,border-color .2s ease}.modal-close:hover{background:var(--green-deep);color:var(--cream);border-color:var(--green-deep)}.modal-close .ms{font-size:1.2rem}.modal-body{padding:18px;overflow-y:auto}@media (min-width: 640px){.modal-header{padding:26px 32px 18px}.modal-header h3{font-size:1.25rem}.modal-body{padding:28px 32px 32px}}
