/* Rainbow Mode Styles - Easter Egg! */ @keyframes rainbowBackground { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } } @keyframes rainbowBorder { 0% { border-color: #ff0000; box-shadow: 0 0 15px #ff0000; } 14% { border-color: #ff8800; box-shadow: 0 0 15px #ff8800; } 28% { border-color: #ffff00; box-shadow: 0 0 15px #ffff00; } 42% { border-color: #88ff00; box-shadow: 0 0 15px #88ff00; } 57% { border-color: #00ff88; box-shadow: 0 0 15px #00ff88; } 71% { border-color: #0088ff; box-shadow: 0 0 15px #0088ff; } 85% { border-color: #8800ff; box-shadow: 0 0 15px #8800ff; } 100% { border-color: #ff0000; box-shadow: 0 0 15px #ff0000; } } @keyframes rainbowText { 0% { color: #ff0000; text-shadow: 0 0 10px #ff0000; } 14% { color: #ff8800; text-shadow: 0 0 10px #ff8800; } 28% { color: #ffff00; text-shadow: 0 0 10px #ffff00; } 42% { color: #88ff00; text-shadow: 0 0 10px #88ff00; } 57% { color: #00ff88; text-shadow: 0 0 10px #00ff88; } 71% { color: #0088ff; text-shadow: 0 0 10px #0088ff; } 85% { color: #8800ff; text-shadow: 0 0 10px #8800ff; } 100% { color: #ff0000; text-shadow: 0 0 10px #ff0000; } } @keyframes rainbowPulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.05); } } /* Main rainbow theme class */ .rainbowMode { background: linear-gradient( -45deg, #ff0000, #ff8800, #ffff00, #88ff00, #00ff88, #00ffff, #0088ff, #8800ff, #ff0088, #ff0000 ) !important; background-size: 400% 400% !important; animation: rainbowBackground 3s ease infinite !important; color: white !important; overflow-x: hidden; } /* Rainbow components */ .rainbowCard { background: linear-gradient( 45deg, #ff0000, #ff8800, #ffff00, #88ff00, #00ff88, #00ffff, #0088ff, #8800ff, #ff0088 ) !important; background-size: 400% 400% !important; animation: rainbowBackground 4s ease infinite, rainbowBorder 2s linear infinite !important; color: white !important; border: 2px solid !important; border-radius: 15px !important; box-shadow: 0 0 20px rgba(255, 255, 255, 0.3) !important; } .rainbowButton { background: linear-gradient( 45deg, #ff0000, #ff8800, #ffff00, #88ff00, #00ff88, #00ffff, #0088ff, #8800ff, #ff0088 ) !important; background-size: 300% 300% !important; animation: rainbowBackground 2s ease infinite, rainbowBorder 1s linear infinite !important; border: 2px solid !important; color: white !important; border-radius: 8px !important; transition: all 0.3s ease !important; font-weight: bold !important; } .rainbowButton:hover { transform: scale(1.05) !important; animation: rainbowBackground 1s ease infinite, rainbowBorder 0.5s linear infinite, rainbowPulse 0.5s ease infinite !important; box-shadow: 0 0 25px rgba(255, 255, 255, 0.6) !important; } .rainbowInput { background: linear-gradient( 90deg, #ff0000, #ff8800, #ffff00, #88ff00, #00ff88, #00ffff, #0088ff, #8800ff, #ff0088 ) !important; background-size: 300% 300% !important; animation: rainbowBackground 2.5s ease infinite, rainbowBorder 1.5s linear infinite !important; border: 2px solid !important; color: white !important; border-radius: 8px !important; } .rainbowInput::placeholder { color: rgba(255, 255, 255, 0.8) !important; } .rainbowText { animation: rainbowText 3s linear infinite !important; font-weight: bold !important; text-shadow: 0 0 10px currentColor !important; } .rainbowSegmentedControl { background: linear-gradient( 45deg, #ff0000, #ff8800, #ffff00, #88ff00, #00ff88, #00ffff, #0088ff, #8800ff, #ff0088 ) !important; background-size: 400% 400% !important; animation: rainbowBackground 3s ease infinite, rainbowBorder 2s linear infinite !important; border: 2px solid !important; border-radius: 12px !important; padding: 4px !important; } .rainbowPaper { background: linear-gradient( 90deg, #00ffff, #0088ff, #8800ff, #ff0088 ) !important; background-size: 100% 100% !important; animation: rainbowBackground 3.5s ease infinite, rainbowBorder 2s linear infinite !important; border: 2px solid !important; color: white !important; border-radius: 12px !important; } /* Easter egg notification */ .rainbowNotification { position: fixed !important; top: 20px !important; right: 20px !important; background: linear-gradient(45deg,#ffff00, #88ff00, #00ff88, #00ffff) !important; background-size: 300% 300% !important; animation: rainbowBackground 1s ease infinite, rainbowBorder 0.5s linear infinite !important; color: white !important; padding: 15px 20px !important; border-radius: 25px !important; font-weight: bold !important; font-size: 16px !important; z-index: 10000 !important; border: 2px solid white !important; box-shadow: 0 0 20px rgba(255, 255, 255, 0.8) !important; user-select: none !important; pointer-events: none !important; } /* Specific component overrides */ .rainbowMode [data-mantine-color-scheme] { background: linear-gradient( -45deg, #ff0000, #ff8800, #ffff00, #88ff00, #00ff88, #00ffff, #0088ff, #8800ff, #ff0088, #ff0000 ) !important; background-size: 400% 400% !important; animation: rainbowBackground 3s ease infinite !important; } /* Make all buttons rainbow in rainbow mode */ .rainbowMode button { background: linear-gradient( 45deg, #ffff00, #88ff00, #00ff88, #00ffff ) !important; background-size: 100% 100% !important; animation: rainbowBackground 2s ease infinite !important; border: 2px solid !important; animation: rainbowBackground 2s ease infinite, rainbowBorder 1.5s linear infinite !important; color: white !important; font-weight: bold !important; } /* Make all inputs rainbow in rainbow mode */ .rainbowMode input, .rainbowMode select, .rainbowMode textarea { background: linear-gradient( 90deg, #ffff00, #88ff00, #00ff88, #00ffff ) !important; background-size: 100% 100% !important; animation: rainbowBackground 2.5s ease infinite !important; border: 2px solid !important; animation: rainbowBackground 2.5s ease infinite, rainbowBorder 1.5s linear infinite !important; color: white !important; } /* Rainbow text class */ .rainbowText { animation: rainbowText 3s linear infinite !important; font-weight: bold !important; text-shadow: 0 0 10px currentColor !important; } /* Make all text rainbow */ .rainbowMode h1, .rainbowMode h2, .rainbowMode h3, .rainbowMode h4, .rainbowMode h5, .rainbowMode h6 { animation: rainbowText 3s linear infinite !important; font-weight: bold !important; }