Spaces:
Running
Running
| /* Custom Styles for ChronoBirth Magic */ | |
| /* Step Indicators */ | |
| .step-indicator { | |
| display: flex; | |
| flex-direction: column; | |
| align-items: center; | |
| gap: 0.5rem; | |
| transition: all 0.3s ease; | |
| } | |
| .step-indicator .step-number { | |
| width: 2.5rem; | |
| height: 2.5rem; | |
| border-radius: 50%; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| font-weight: 600; | |
| font-size: 0.875rem; | |
| background: #e2e8f0; | |
| color: #64748b; | |
| transition: all 0.3s ease; | |
| } | |
| .step-indicator .step-label { | |
| font-size: 0.75rem; | |
| font-weight: 500; | |
| color: #94a3b8; | |
| text-transform: uppercase; | |
| letter-spacing: 0.05em; | |
| transition: all 0.3s ease; | |
| } | |
| .step-indicator.active .step-number { | |
| background: linear-gradient(135deg, #ef4444, #f59e0b); | |
| color: white; | |
| box-shadow: 0 4px 15px rgba(239, 68, 68, 0.4); | |
| } | |
| .step-indicator.active .step-label { | |
| color: #ef4444; | |
| } | |
| .step-indicator.completed .step-number { | |
| background: #10b981; | |
| color: white; | |
| } | |
| .step-line { | |
| width: 3rem; | |
| height: 2px; | |
| background: #e2e8f0; | |
| border-radius: 1px; | |
| transition: all 0.3s ease; | |
| } | |
| .step-indicator.active + .step-line, | |
| .step-indicator.completed + .step-line { | |
| background: linear-gradient(90deg, #ef4444, #f59e0b); | |
| } | |
| /* Form Steps */ | |
| .form-step { | |
| display: none; | |
| opacity: 0; | |
| transform: translateX(20px); | |
| transition: all 0.4s ease; | |
| } | |
| .form-step.active { | |
| display: block; | |
| opacity: 1; | |
| transform: translateX(0); | |
| } | |
| .form-step.prev { | |
| transform: translateX(-20px); | |
| } | |
| /* Input Groups */ | |
| .input-group { | |
| position: relative; | |
| } | |
| .input-label { | |
| display: flex; | |
| align-items: center; | |
| gap: 0.5rem; | |
| font-size: 0.875rem; | |
| font-weight: 500; | |
| color: #475569; | |
| margin-bottom: 0.5rem; | |
| transition: color 0.3s ease; | |
| } | |
| .dark .input-label { | |
| color: #94a3b8; | |
| } | |
| .input-wrapper { | |
| position: relative; | |
| } | |
| .birth-input { | |
| width: 100%; | |
| padding: 0.875rem 1rem; | |
| font-size: 1rem; | |
| font-weight: 500; | |
| color: #1e293b; | |
| background: white; | |
| border: 2px solid #e2e8f0; | |
| border-radius: 1rem; | |
| transition: all 0.3s ease; | |
| outline: none; | |
| } | |
| .dark .birth-input { | |
| color: #f1f5f9; | |
| background: #1e293b; | |
| border-color: #334155; | |
| } | |
| .birth-input:hover { | |
| border-color: #cbd5e1; | |
| } | |
| .birth-input:focus { | |
| border-color: #ef4444; | |
| box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.1); | |
| } | |
| .dark .birth-input:focus { | |
| box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.2); | |
| } | |
| .input-glow { | |
| position: absolute; | |
| inset: -2px; | |
| border-radius: 1rem; | |
| background: linear-gradient(135deg, #ef4444, #f59e0b); | |
| opacity: 0; | |
| z-index: -1; | |
| transition: opacity 0.3s ease; | |
| filter: blur(8px); | |
| } | |
| .birth-input:focus ~ .input-glow { | |
| opacity: 0.3; | |
| } | |
| /* Preset Buttons */ | |
| .preset-btn { | |
| padding: 0.5rem 1rem; | |
| font-size: 0.875rem; | |
| font-weight: 500; | |
| color: #64748b; | |
| background: #f1f5f9; | |
| border: 1px solid #e2e8f0; | |
| border-radius: 2rem; | |
| cursor: pointer; | |
| transition: all 0.3s ease; | |
| } | |
| .dark .preset-btn { | |
| color: #94a3b8; | |
| background: #334155; | |
| border-color: #475569; | |
| } | |
| .preset-btn:hover { | |
| color: #ef4444; | |
| background: #fef2f2; | |
| border-color: #ef4444; | |
| transform: translateY(-2px); | |
| } | |
| .dark .preset-btn:hover { | |
| background: #451a1a; | |
| } | |
| /* Navigation Buttons */ | |
| .nav-btn { | |
| display: inline-flex; | |
| align-items: center; | |
| gap: 0.5rem; | |
| padding: 0.875rem 1.75rem; | |
| font-size: 0.875rem; | |
| font-weight: 600; | |
| border-radius: 1rem; | |
| cursor: pointer; | |
| transition: all 0.3s ease; | |
| border: none; | |
| } | |
| .nav-btn.primary { | |
| color: white; | |
| background: linear-gradient(135deg, #ef4444, #f59e0b); | |
| box-shadow: 0 4px 15px rgba(239, 68, 68, 0.3); | |
| } | |
| .nav-btn.primary:hover { | |
| transform: translateY(-2px); | |
| box-shadow: 0 8px 25px rgba(239, 68, 68, 0.4); | |
| } | |
| .nav-btn.secondary { | |
| color: #64748b; | |
| background: #f1f5f9; | |
| } | |
| .dark .nav-btn.secondary { | |
| color: #94a3b8; | |
| background: #334155; | |
| } | |
| .nav-btn.secondary:hover { | |
| background: #e2e8f0; | |
| } | |
| .dark .nav-btn.secondary:hover { | |
| background: #475569; | |
| } | |
| .nav-btn.magic { | |
| color: white; | |
| background: linear-gradient(135deg, #ef4444, #f59e0b, #8b5cf6); | |
| background-size: 200% 200%; | |
| animation: gradient-shift 3s ease infinite; | |
| box-shadow: 0 4px 20px rgba(239, 68, 68, 0.4); | |
| } | |
| @keyframes gradient-shift { | |
| 0%, 100% { background-position: 0% 50%; } | |
| 50% { background-position: 100% 50%; } | |
| } | |
| .nav-btn.magic:hover { | |
| transform: translateY(-2px) scale(1.02); | |
| box-shadow: 0 8px 30px rgba(239, 68, 68, 0.5); | |
| } | |
| .magic-text { | |
| position: relative; | |
| } | |
| .magic-text::after { | |
| content: ''; | |
| position: absolute; | |
| bottom: -2px; | |
| left: 0; | |
| width: 100%; | |
| height: 2px; | |
| background: white; | |
| transform: scaleX(0); | |
| transition: transform 0.3s ease; | |
| } | |
| .nav-btn.magic:hover .magic-text::after { | |
| transform: scaleX(1); | |
| } | |
| /* Fact Cards */ | |
| .fact-card { | |
| display: flex; | |
| flex-direction: column; | |
| align-items: center; | |
| gap: 0.5rem; | |
| padding: 1.25rem; | |
| background: #f8fafc; | |
| border-radius: 1rem; | |
| border: 1px solid #e2e8f0; | |
| transition: all 0.3s ease; | |
| } | |
| .dark .fact-card { | |
| background: #334155; | |
| border-color: #475569; | |
| } | |
| .fact-card:hover { | |
| transform: translateY(-4px); | |
| box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1); | |
| } | |
| .fact-label { | |
| font-size: 0.75rem; | |
| font-weight: 500; | |
| color: #94a3b8; | |
| text-transform: uppercase; | |
| letter-spacing: 0.05em; | |
| } | |
| .fact-value { | |
| font-size: 1.25rem; | |
| font-weight: 700; | |
| color: #1e293b; | |
| } | |
| .dark .fact-value { | |
| color: #f1f5f9; | |
| } | |
| /* Result Cards */ | |
| .result-card { | |
| padding: 1.5rem; | |
| background: #f8fafc; | |
| border-radius: 1.5rem; | |
| border: 1px solid #e2e8f0; | |
| text-align: center; | |
| transition: all 0.3s ease; | |
| } | |
| .dark .result-card { | |
| background: #334155; | |
| border-color: #475569; | |
| } | |
| .result-card:hover { | |
| transform: translateY(-4px); | |
| box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15); | |
| } | |
| .result-icon { | |
| width: 3.5rem; | |
| height: 3.5rem; | |
| border-radius: 1rem; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| margin: 0 auto 1rem; | |
| transition: all 0.3s ease; | |
| } | |
| .result-title { | |
| font-size: 0.875rem; | |
| font-weight: 500; | |
| color: #94a3b8; | |
| margin-bottom: 0.5rem; | |
| } | |
| .result-value { | |
| font-size: 1.5rem; | |
| font-weight: 700; | |
| color: #1e293b; | |
| margin-bottom: 0.25rem; | |
| } | |
| .dark .result-value { | |
| color: #f1f5f9; | |
| } | |
| .result-subtitle { | |
| font-size: 0.875rem; | |
| color: #64748b; | |
| } | |
| .dark .result-subtitle { | |
| color: #94a3b8; | |
| } | |
| /* Action Buttons */ | |
| .action-btn { | |
| display: inline-flex; | |
| align-items: center; | |
| gap: 0.5rem; | |
| padding: 0.875rem 1.5rem; | |
| font-size: 0.875rem; | |
| font-weight: 600; | |
| color: #64748b; | |
| background: #f1f5f9; | |
| border: 1px solid #e2e8f0; | |
| border-radius: 1rem; | |
| cursor: pointer; | |
| transition: all 0.3s ease; | |
| } | |
| .dark .action-btn { | |
| color: #94a3b8; | |
| background: #334155; | |
| border-color: #475569; | |
| } | |
| .action-btn:hover { | |
| background: #e2e8f0; | |
| transform: translateY(-2px); | |
| } | |
| .dark .action-btn:hover { | |
| background: #475569; | |
| } | |
| .action-btn.primary { | |
| color: white; | |
| background: linear-gradient(135deg, #ef4444, #f59e0b); | |
| border-color: transparent; | |
| } | |
| .action-btn.primary:hover { | |
| box-shadow: 0 8px 25px rgba(239, 68, 68, 0.3); | |
| } | |
| /* Custom Scrollbar */ | |
| ::-webkit-scrollbar { | |
| width: 8px; | |
| height: 8px; | |
| } | |
| ::-webkit-scrollbar-track { | |
| background: transparent; | |
| } | |
| ::-webkit-scrollbar-thumb { | |
| background: #cbd5e1; | |
| border-radius: 4px; | |
| } | |
| ::-webkit-scrollbar-thumb:hover { | |
| background: #94a3b8; | |
| } | |
| .dark ::-webkit-scrollbar-thumb { | |
| background: #475569; | |
| } | |
| .dark ::-webkit-scrollbar-thumb:hover { | |
| background: #64748b; | |
| } | |
| /* Selection Color */ | |
| ::selection { | |
| background: rgba(239, 68, 68, 0.3); | |
| color: inherit; | |
| } | |
| /* Focus Visible */ | |
| *:focus-visible { | |
| outline: 2px solid #ef4444; | |
| outline-offset: 2px; | |
| } | |
| /* Number Input Spinner Hide */ | |
| input[type="number"]::-webkit-inner-spin-button, | |
| input[type="number"]::-webkit-outer-spin-button { | |
| -webkit-appearance: none; | |
| margin: 0; | |
| } | |
| input[type="number"] { | |
| -moz-appearance: textfield; | |
| } | |
| /* Gradient Text */ | |
| .gradient-text { | |
| background: linear-gradient(135deg, #ef4444, #f59e0b); | |
| -webkit-background-clip: text; | |
| -webkit-text-fill-color: transparent; | |
| background-clip: text; | |
| } | |
| /* Glass Effect */ | |
| .glass { | |
| background: rgba(255, 255, 255, 0.7); | |
| backdrop-filter: blur(20px); | |
| -webkit-backdrop-filter: blur(20px); | |
| } | |
| .dark .glass { | |
| background: rgba(30, 41, 59, 0.7); | |
| } | |
| /* Animations */ | |
| @keyframes shimmer { | |
| 0% { background-position: -200% 0; } | |
| 100% { background-position: 200% 0; } | |
| } | |
| .shimmer { | |
| background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent); | |
| background-size: 200% 100%; | |
| animation: shimmer 2s infinite; | |
| } | |
| /* Responsive */ | |
| @media (max-width: 640px) { | |
| .step-line { | |
| width: 1.5rem; | |
| } | |
| .step-indicator .step-label { | |
| display: none; | |
| } | |
| .result-card { | |
| padding: 1rem; | |
| } | |
| .result-value { | |
| font-size: 1.25rem; | |
| } | |
| } | |
| /* Reduced Motion */ | |
| @media (prefers-reduced-motion: reduce) { | |
| *, | |
| *::before, | |
| *::after { | |
| animation-duration: 0.01ms ; | |
| animation-iteration-count: 1 ; | |
| transition-duration: 0.01ms ; | |
| } | |
| } |