@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap'); * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Inter', sans-serif; } body { overflow-x: hidden; } /* Custom scrollbar */ ::-webkit-scrollbar { width: 10px; } ::-webkit-scrollbar-track { background: #1f2937; } ::-webkit-scrollbar-thumb { background: #ef4444; border-radius: 5px; } ::-webkit-scrollbar-thumb:hover { background: #dc2626; } /* Custom slider styling */ .slider-red::-webkit-slider-thumb { appearance: none; width: 22px; height: 22px; border-radius: 50%; background: #ef4444; cursor: pointer; border: 3px solid #1f2937; box-shadow: 0 2px 8px rgba(239, 68, 68, 0.4); } .slider-red::-moz-range-thumb { width: 22px; height: 22px; border-radius: 50%; background: #ef4444; cursor: pointer; border: 3px solid #1f2937; box-shadow: 0 2px 8px rgba(239, 68, 68, 0.4); } /* Canvas container glow effect */ #canvas-container { position: relative; } #canvas-container::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; border-radius: 0.75rem; background: linear-gradient(45deg, rgba(239, 68, 68, 0.1), transparent); pointer-events: none; z-index: 1; } /* Color preset hover effects */ .color-preset { transition: all 0.2s ease; position: relative; overflow: hidden; } .color-preset::after { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(255, 255, 255, 0.1); opacity: 0; transition: opacity 0.2s ease; } .color-preset:hover::after { opacity: 1; } .color-preset.active { transform: scale(0.95); box-shadow: inset 0 0 0 2px white; } /* Pulse animation for active auto-rotate */ @keyframes pulse { 0% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.7); } 70% { box-shadow: 0 0 0 10px rgba(239, 68, 68, 0); } 100% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0); } } .pulse { animation: pulse 2s infinite; } /* Responsive adjustments */ @media (max-width: 768px) { #canvas-container { height: 400px !important; } } @media (max-width: 640px) { #canvas-container { height: 350px !important; } .text-4xl { font-size: 2rem; } }