.modal-overlay{z-index:10000;opacity:0;justify-content:center;align-items:center;padding:0;display:flex;position:fixed;inset:0}.modal-overlay.modal-entering{animation:.3s ease-out forwards modalFadeIn}.modal-overlay.modal-closing{animation:.3s ease-in forwards modalFadeOut}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalFadeOut{0%{opacity:1}to{opacity:0}}.modal-backdrop{pointer-events:none;background:#020610;position:absolute;inset:0}.modal-content{z-index:10001;background:#020610;border-radius:0;flex-direction:column;width:100%;max-width:100%;height:100dvh;display:flex;position:relative;overflow:hidden;transform:translateZ(0)}.modal-scroll-area{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;overflow:hidden auto}.modal-close-btn{z-index:10002;-webkit-backdrop-filter:blur(16px);color:#fff;font-family:var(--font-sans);letter-spacing:.2em;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:9999px;align-items:center;gap:12px;padding:6px 6px 6px 24px;font-size:.75rem;font-weight:600;transition:all .5s cubic-bezier(.32,.72,0,1);display:flex;position:absolute;top:40px;right:40px;box-shadow:0 10px 30px #0000004d}.modal-close-btn span{display:block}.modal-close-circle{background:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:all .5s cubic-bezier(.32,.72,0,1);display:flex}.modal-close-circle svg{width:18px;height:18px;transition:transform .5s cubic-bezier(.32,.72,0,1)}@media (hover:hover) and (pointer:fine){.modal-close-btn:hover{background:#ffffff1a;border-color:#fff3}.modal-close-btn:hover .modal-close-circle{color:#fff;background:#3b82f6;box-shadow:0 0 20px #3b82f699}.modal-close-btn:hover .modal-close-circle svg{transform:rotate(90deg)}}@media (max-width:768px){.modal-overlay{padding:0}.modal-content{border-radius:0;max-width:100%;height:100dvh}.modal-close-btn{top:max(16px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));justify-content:center;gap:0;width:52px;height:52px;padding:6px}.modal-close-btn span{display:none}}
