.notification{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);margin-bottom:.5rem;padding:1rem;transform:translateY(0);transition:all .3s ease-in-out}.notification.success{background-color:#f0fdf4;border-color:#bbf7d0}.notification.error{background-color:#fef2f2;border-color:#fecaca}.notification.info{background-color:#eff6ff;border-color:#bfdbfe}.notification.warning{background-color:#fffbeb;border-color:#fde68a}.floating-upload-btn{background-color:#7c3aed;border-radius:9999px;bottom:1.5rem;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);color:#fff;font-weight:600;left:50%;opacity:0;padding:.75rem 1.5rem;pointer-events:none;position:fixed;transform:translateX(-50%);transform:translateX(-50%) translateY(1rem);transition:all .3s ease-in-out;z-index:40}.floating-upload-btn:hover{background-color:#6d28d9}.floating-upload-btn.show{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0)}.upload-area{border:2px dashed #d1d5db;border-radius:.75rem;cursor:pointer;padding:2rem;text-align:center;transition:all .3s ease-in-out}.upload-area.dragover,.upload-area:hover{background-color:#faf5ff;border-color:#a855f7}.fade-in{animation:fadeIn .3s ease-in-out}.fade-out{animation:fadeOut .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.demo-image{transition:transform .3s ease-in-out}.demo-image:hover{transform:scale(1.05)}.feature-bg-gradient{background:linear-gradient(135deg,rgba(139,69,19,.05),hsla(0,0%,100%,.1))}.custom-scrollbar::-webkit-scrollbar{width:6px}.custom-scrollbar::-webkit-scrollbar-track{background-color:#f3f4f6;border-radius:9999px}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:#d8b4fe;border-radius:9999px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background-color:#c084fc}@media (max-width:768px){.floating-upload-btn{font-size:.875rem;padding:.5rem 1rem}.upload-area{padding:1.5rem}}.loading-spinner{animation:spin 1s linear infinite;border-bottom:2px solid #7c3aed;border-radius:50%;height:2rem;width:2rem}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.success-checkmark{animation:bounce 1s infinite;color:#10b981}@keyframes bounce{0%,20%,53%,80%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1);transform:translateZ(0)}40%,43%{animation-timing-function:cubic-bezier(.755,.05,.855,.06);transform:translate3d(0,-30px,0)}70%{animation-timing-function:cubic-bezier(.755,.05,.855,.06);transform:translate3d(0,-15px,0)}90%{transform:translate3d(0,-4px,0)}}.error-icon{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;color:#ef4444}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}
