feat: fade + scale animation on outer wrapper — glass panel untouched
This commit is contained in:
@@ -374,18 +374,20 @@ export default function UnifiedSettingsModal() {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
{/* Backdrop — binary visibility, no opacity transition */}
|
{/* Backdrop */}
|
||||||
<div
|
<div
|
||||||
className={`fixed inset-0 z-[60] bg-black/50 ${
|
className={`fixed inset-0 z-[60] bg-black/50 transition-opacity duration-200 ${
|
||||||
isOpen ? 'visible' : 'invisible'
|
isOpen ? 'opacity-100' : 'opacity-0 pointer-events-none'
|
||||||
}`}
|
}`}
|
||||||
onClick={handleBackdropClick}
|
onClick={handleBackdropClick}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
{/* Modal — always mounted, instant show/hide (glass + animation = flash) */}
|
{/* Modal outer wrapper — fades in/out, glass panel inside stays always-opaque */}
|
||||||
<div
|
<div
|
||||||
className={`fixed inset-0 z-[61] flex items-center justify-center p-4 ${
|
className={`fixed inset-0 z-[61] flex items-center justify-center p-4 transition-all duration-200 ease-out ${
|
||||||
isOpen ? 'visible pointer-events-auto' : 'invisible pointer-events-none'
|
isOpen
|
||||||
|
? 'opacity-100 scale-100 pointer-events-auto'
|
||||||
|
: 'opacity-0 scale-[0.97] pointer-events-none'
|
||||||
}`}
|
}`}
|
||||||
>
|
>
|
||||||
<div
|
<div
|
||||||
|
|||||||
Reference in New Issue
Block a user