Glassmorphic Modal
.modal-1 { background: rgba(255, 255, 255, 0.1); backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.2); }
Slide-In Modal
.modal-2 { transform: translateX(100%); animation: slide-in 0.5s forwards; }\n@keyframes slide-in { to { transform: translateX(0); } }
Pop-Up Bubble Modal
.modal-3 { transform: scale(0); animation: bubble-pop 0.5s forwards; }\n@keyframes bubble-pop { to { transform: scale(1); } }
3D Flip Modal
.modal-4 { transform: rotateY(90deg); animation: flip-in 0.5s forwards; }\n@keyframes flip-in { to { transform: rotateY(0); } }
Fade-In Overlay Modal
.modal-5 { opacity: 0; animation: fade-in 0.5s forwards; }\n@keyframes fade-in { to { opacity: 1; } }
Elastic Pop Modal
.modal-6 { transform: scale(0); animation: elastic-pop 0.5s forwards; }\n@keyframes elastic-pop { 50% { transform: scale(1.2); } 100% { transform: scale(1); } }
Neumorphic Modal
.modal-7 { background: #e0e0e0; box-shadow: 5px 5px 10px #bebebe, -5px -5px 10px #ffffff; }
Neon Border Modal
.modal-8 { border: 2px solid #ef4444; box-shadow: 0 0 10px #ef4444; animation: neon-glow 1s infinite; }\n@keyframes neon-glow { 50% { box-shadow: 0 0 20px #ef4444; } }
Draggable Modal
.modal-9 { position: absolute; cursor: move; }\n/* Use interact.js for drag functionality */
Full-Screen Modal
.modal-10 { width: 100vw; height: 100vh; border-radius: 0; }
Tooltip Modal
.modal-11 { max-width: 200px; padding: 8px; font-size: 14px; }
Carousel Modal
.modal-12 .carousel { display: flex; overflow-x: auto; gap: 10px; }\n.modal-12 .carousel img { width: 100px; }
Video Modal
.modal-13 video { width: 100%; max-height: 200px; }
Audio Modal
.modal-14 audio { width: 100%; }
Form Wizard Modal
.modal-15 .form-step { display: none; }\n.modal-15 .form-step.active { display: block; }
Tabbed Modal
.modal-16 .tab { display: none; }\n.modal-16 .tab.active { display: block; }
Stepper Modal
.modal-17 .step { display: none; }\n.modal-17 .step.active { display: block; }
Countdown Modal
.modal-18 .countdown { font-size: 24px; animation: pulse 1s infinite; }\n@keyframes pulse { 50% { transform: scale(1.1); } }
Animated SVG Modal
.modal-19 svg path { animation: draw 2s infinite; }\n@keyframes draw { to { stroke-dashoffset: 0; } }
Clip-Path Modal
.modal-20 { clip-path: circle(0% at center); animation: clip-reveal 0.5s forwards; }\n@keyframes clip-reveal { to { clip-path: circle(100% at center); } }
Parallax Modal
.modal-21 { background: url('bg.jpg') center/cover; background-attachment: fixed; }
Sticky Modal
.modal-22 { position: sticky; top: 10px; }
Scrollable Modal
.modal-23 { max-height: 300px; overflow-y: auto; }
Split Modal
.modal-24 { transform: translateY(50%) scaleY(0); animation: split-reveal 0.5s forwards; }\n@keyframes split-reveal { to { transform: translateY(0) scaleY(1); } }
Magnetic Modal
.modal-25:hover { transform: translate(5px, -5px); transition: transform 0.2s; }
Hover-Triggered Modal
.modal-26 { opacity: 0; }\n.trigger-btn:hover + .modal-overlay { display: flex; opacity: 1; }
Contextual Popover
.modal-27 { max-width: 150px; font-size: 12px; padding: 8px; }
Toast Notification Modal
.modal-28 { position: fixed; bottom: 10px; right: 10px; max-width: 200px; }
Sliding Sheet Modal
.modal-29 { transform: translateY(100%); animation: slide-up 0.5s forwards; }\n@keyframes slide-up { to { transform: translateY(0); } }
Jelly Modal
.modal-30 { transform: scale(0); animation: jelly 0.5s forwards; }\n@keyframes jelly { 50% { transform: scale(1.3, 0.7); } 100% { transform: scale(1); } }
Rapid Zoom Modal
.modal-31 { transform: scale(0.1); animation: zoom 0.3s forwards; }\n@keyframes zoom { to { transform: scale(1); } }
Rotating Modal
.modal-32 { transform: rotate(360deg); animation: rotate-in 0.5s forwards; }\n@keyframes rotate-in { to { transform: rotate(0); } }
Thermal Modal
.modal-33 { background: linear-gradient(45deg, #ff0000, #0000ff); animation: thermal 2s infinite; }\n@keyframes thermal { 50% { background: linear-gradient(45deg, #0000ff, #ff0000); } }
Underline Modal
.modal-34 { border-bottom: 4px solid #ef4444; animation: underline 0.5s forwards; }\n@keyframes underline { to { border-bottom-width: 8px; } }
Voice-Activated Modal
.modal-35 { display: none; }\nconst recognition = new (window.SpeechRecognition || window.webkitSpeechRecognition)();\nrecognition.onresult = (event) => { if (event.results[0][0].transcript.includes('open')) document.querySelector('.modal-35').style.display = 'block'; };
Waterfall Modal
.modal-36 { transform: translateY(-100%); animation: waterfall 0.5s forwards; }\n@keyframes waterfall { to { transform: translateY(0); } }
X-Ray Modal
.modal-37 { background: rgba(0, 0, 0, 0.1); filter: contrast(1.5); }
Yinyang Modal
.modal-38 { background: radial-gradient(circle, #fff 50%, #000 50%); animation: spin 2s infinite; }\n@keyframes spin { to { transform: rotate(360deg); } }
Zigzag Modal
.modal-39 { transform: translateX(-10px); animation: zigzag 0.5s infinite alternate; }\n@keyframes zigzag { to { transform: translateX(10px); } }
Zoom In/Out Modal
.modal-40 { transform: scale(0.5); animation: zoom-in-out 1s infinite; }\n@keyframes zoom-in-out { 50% { transform: scale(1); } }
Bounce Modal
.modal-41 { transform: translateY(-20px); animation: bounce 0.5s infinite; }\n@keyframes bounce { 50% { transform: translateY(0); } }
Curtain Modal
.modal-42 { transform: translateY(-100%); animation: curtain 0.5s forwards; }\n@keyframes curtain { to { transform: translateY(0); } }
Drop Shadow Modal
.modal-43 { box-shadow: 0 10px 20px rgba(0, 0, 0, 0.5); }
Exploding Modal
.modal-44 { transform: scale(0); animation: explode 0.5s forwards; }\n@keyframes explode { to { transform: scale(1); } }
Frosted Glass Modal
.modal-45 { background: rgba(255, 255, 255, 0.2); backdrop-filter: blur(15px); }
Gradient Fade Modal
.modal-46 { background: linear-gradient(45deg, #ef4444, #3b82f6); opacity: 0; animation: fade-in 0.5s forwards; }\n@keyframes fade-in { to { opacity: 1; } }
Highlighted Edges Modal
.modal-47 { border: 2px solid #facc15; box-shadow: 0 0 10px #facc15; }
Inset Frame Modal
.modal-48 { box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.5); }
Jump-In Modal
.modal-49 { transform: translateY(-50px); animation: jump-in 0.5s forwards; }\n@keyframes jump-in { to { transform: translateY(0); } }
Kinetic Modal
.modal-50 { transform: scale(0); animation: kinetic 0.5s forwards; }\n@keyframes kinetic { 50% { transform: scale(1.2); } 100% { transform: scale(1); } }