3d-magic-generator / style.css
curiouscurrent's picture
3d design not getting generated
ecc1f3d verified
/* Custom animations and global styles */
@keyframes float {
0%, 100% {
transform: translateY(0px);
}
50% {
transform: translateY(-20px);
}
}
@keyframes gradient-shift {
0%, 100% {
background-position: 0% 50%;
}
50% {
background-position: 100% 50%;
}
}
.animate-float {
animation: float 6s ease-in-out infinite;
}
.gradient-animate {
background: linear-gradient(-45deg, #0ea5e9, #d946ef, #0ea5e9, #d946ef);
background-size: 400% 400%;
animation: gradient-shift 15s ease infinite;
}
/* Custom scrollbar */
::-webkit-scrollbar {
width: 8px;
height: 8px;
}
::-webkit-scrollbar-track {
background: #1f2937;
}
::-webkit-scrollbar-thumb {
background: #4b5563;
border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
background: #6b7280;
}
/* Glass morphism effect */
.glass {
background: rgba(31, 41, 55, 0.5);
backdrop-filter: blur(10px);
border: 1px solid rgba(75, 85, 99, 0.3);
}
/* Glow effects */
.glow-primary {
box-shadow: 0 0 20px rgba(14, 165, 233, 0.5);
}
.glow-secondary {
box-shadow: 0 0 20px rgba(217, 70, 239, 0.5);
}
/* Smooth transitions */
* {
transition: color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}
/* Text selection */
::selection {
background: rgba(14, 165, 233, 0.3);
}
/* Focus styles */
.focus-ring:focus {
outline: none;
ring: 2px;
ring-color: #0ea5e9;
ring-offset: 2px;
}
/* Hover lift effect */
.hover-lift {
transition: transform 0.2s ease;
}
.hover-lift:hover {
transform: translateY(-4px);
}
/* Loading animation */
.loading-dots::after {
content: '';
animation: dots 1.5s steps(4, end) infinite;
}
@keyframes dots {
0%, 20% {
content: '';
}
40% {
content: '.';
}
60% {
content: '..';
}
80%, 100% {
content: '...';
}
}
/* 3D Canvas styles */
#3d-canvas {
width: 100%;
height: 100%;
display: block;
border-radius: 8px;
}
/* Preview container enhancements */
#preview-container {
position: relative;
background: linear-gradient(135deg, #1e293b, #0f172a);
border-radius: 12px;
overflow: hidden;
}
#preview-container::before {
content: '';
position: absolute;
top: -2px;
left: -2px;
right: -2px;
bottom: -2px;
background: linear-gradient(45deg, #0ea5e9, #d946ef, #0ea5e9);
border-radius: 12px;
opacity: 0;
transition: opacity 0.3s ease;
z-index: -1;
}
#preview-container:hover::before {
opacity: 0.3;
}
/* Loading spinner for canvas */
.canvas-loading {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 60px;
height: 60px;
border: 3px solid rgba(14, 165, 233, 0.3);
border-top: 3px solid #0ea5e9;
border-radius: 50%;
animation: spin 1s linear infinite;
}
@keyframes spin {
0% { transform: translate(-50%, -50%) rotate(0deg); }
100% { transform: translate(-50%, -50%) rotate(360deg); }
}
/* Style button active state */
.style-btn.active {
background: linear-gradient(135deg, #0ea5e9, #d946ef);
color: white;
}
/* Responsive grid adjustments */
@media (max-width: 768px) {
.grid-responsive {
grid-template-columns: 1fr;
}
}