:where(.modal-overlay){position:fixed;inset:0;background-color:rgba(15,23,42,.4);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem;animation:modal-fade-in .3s ease-out}:where(.modal-container){background-color:#ffffff;border-radius:1rem;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04),inset 0 0 0 1px rgba(255,255,255,.1);width:100%;max-width:42rem;max-height:90vh;display:flex;flex-direction:column;position:relative;overflow:hidden;animation:modal-scale-in .3s cubic-bezier(.34,1.56,.64,1)}:where(.modal-header){padding:1.5rem 1.5rem 1rem;display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid #f1f5f9}:where(.modal-title-container){flex:1}:where(.modal-title){font-size:1.25rem;font-weight:700;color:#0f172a;line-height:1.2}:where(.modal-description){font-size:.875rem;color:#64748b;margin-top:.25rem}:where(.modal-close-btn){background-color:#f1f5f9;color:#64748b;border:none;border-radius:.75rem;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;margin-left:1rem;flex-shrink:0;transform:scale(.95)}:where(.modal-close-btn:hover){background-color:#fee2e2;color:#ef4444;transform:scale(1)}:where(.modal-body){padding:1.5rem;overflow-y:auto;flex:1;scrollbar-width:thin;scrollbar-color:#e2e8f0 transparent}:where(.modal-body::-webkit-scrollbar){width:6px}:where(.modal-body::-webkit-scrollbar-track){background:transparent}:where(.modal-body::-webkit-scrollbar-thumb){background-color:#e2e8f0;border-radius:20px}:where(.modal-footer){padding:1rem 1.5rem 1.5rem;display:flex;align-items:center;justify-content:flex-end;gap:.75rem;background-color:#f8fafc;border-top:1px solid #f1f5f9}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-scale-in{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@media (max-width:640px){.modal-container{max-height:100vh;border-radius:1rem 1rem 0 0;position:fixed;bottom:0;animation:modal-slide-up .3s ease-out}@keyframes modal-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}}