Spaces:
Sleeping
Sleeping
| @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap'); | |
| @tailwind base; | |
| @tailwind components; | |
| @tailwind utilities; | |
| /* βββ Tokens βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| :root { | |
| --bg: #ffffff; | |
| --surface: #fafafa; | |
| --border: #e5e7eb; | |
| --border2: #f0f0f0; | |
| --text: #0f172a; | |
| --muted: #64748b; | |
| --accent: #f97316; | |
| --accent2: #fbbf24; | |
| --radius: 16px; | |
| } | |
| * { box-sizing: border-box; margin: 0; padding: 0; } | |
| html, body { | |
| min-height: 100vh; | |
| background: var(--bg); | |
| color: var(--text); | |
| font-family: 'Inter', system-ui, sans-serif; | |
| scroll-behavior: smooth; | |
| overflow-x: hidden; | |
| -webkit-font-smoothing: antialiased; | |
| } | |
| /* βββ Scrollbar βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| ::-webkit-scrollbar { width: 5px; } | |
| ::-webkit-scrollbar-track { background: #f1f5f9; } | |
| ::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 3px; } | |
| ::-webkit-scrollbar-thumb:hover { background: #94a3b8; } | |
| /* βββ Subtle dot grid background βββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .page-bg { | |
| position: fixed; | |
| inset: 0; | |
| z-index: 0; | |
| pointer-events: none; | |
| background-image: radial-gradient(circle, rgba(0,0,0,0.06) 1px, transparent 1px); | |
| background-size: 24px 24px; | |
| } | |
| /* βββ βββ Scroll Animations βββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .scroll-hidden { | |
| opacity: 0; | |
| transform: translateY(28px); | |
| transition: opacity 0.65s cubic-bezier(0.4, 0, 0.2, 1), transform 0.65s cubic-bezier(0.4, 0, 0.2, 1); | |
| } | |
| .scroll-hidden.delay-1 { transition-delay: 0.1s; } | |
| .scroll-hidden.delay-2 { transition-delay: 0.2s; } | |
| .scroll-hidden.delay-3 { transition-delay: 0.3s; } | |
| .scroll-hidden.delay-4 { transition-delay: 0.4s; } | |
| .scroll-visible { | |
| opacity: 1 ; | |
| transform: translateY(0) ; | |
| } | |
| /* Fade in from left */ | |
| .scroll-left { | |
| opacity: 0; | |
| transform: translateX(-24px); | |
| transition: opacity 0.6s ease, transform 0.6s ease; | |
| } | |
| .scroll-left.scroll-visible { opacity: 1; transform: translateX(0); } | |
| /* Fade in from right */ | |
| .scroll-right { | |
| opacity: 0; | |
| transform: translateX(24px); | |
| transition: opacity 0.6s ease, transform 0.6s ease; | |
| } | |
| .scroll-right.scroll-visible { opacity: 1; transform: translateX(0); } | |
| /* Scale in */ | |
| .scroll-scale { | |
| opacity: 0; | |
| transform: scale(0.93); | |
| transition: opacity 0.55s ease, transform 0.55s cubic-bezier(0.34, 1.2, 0.64, 1); | |
| } | |
| .scroll-scale.scroll-visible { opacity: 1; transform: scale(1); } | |
| /* βββ Navbar ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .navbar { | |
| background: rgba(255, 255, 255, 0.88); | |
| backdrop-filter: blur(16px) saturate(150%); | |
| -webkit-backdrop-filter: blur(16px) saturate(150%); | |
| border-bottom: 1px solid var(--border2); | |
| } | |
| /* βββ Cards βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .card { | |
| background: #ffffff; | |
| border: 1px solid var(--border); | |
| border-radius: var(--radius); | |
| transition: box-shadow 0.25s, border-color 0.25s, transform 0.2s; | |
| } | |
| .card:hover { | |
| box-shadow: 0 12px 40px rgba(0,0,0,0.09); | |
| border-color: #d1d5db; | |
| transform: translateY(-2px); | |
| } | |
| /* βββ Moving Border Card ββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .moving-border-card { | |
| position: relative; | |
| background: #ffffff; | |
| border-radius: var(--radius); | |
| } | |
| .moving-border-card::before { | |
| content: ''; | |
| position: absolute; | |
| inset: -1px; | |
| border-radius: calc(var(--radius) + 1px); | |
| background: conic-gradient( | |
| from var(--angle, 0deg), | |
| transparent 75%, | |
| #f97316 80%, | |
| #fbbf24 85%, | |
| #fb923c 90%, | |
| transparent 95% | |
| ); | |
| animation: border-spin 4s linear infinite; | |
| z-index: -1; | |
| } | |
| .moving-border-card::after { | |
| content: ''; | |
| position: absolute; | |
| inset: 0; | |
| border-radius: var(--radius); | |
| background: #ffffff; | |
| z-index: -1; | |
| } | |
| @property --angle { | |
| syntax: '<angle>'; | |
| initial-value: 0deg; | |
| inherits: false; | |
| } | |
| @keyframes border-spin { to { --angle: 360deg; } } | |
| /* βββ Drop Zone βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .drop-zone { | |
| border: 2px dashed #e5e7eb; | |
| border-radius: 12px; | |
| background: #fafafa; | |
| cursor: pointer; | |
| transition: all 0.25s ease; | |
| } | |
| .drop-zone:hover, | |
| .drop-zone.drag-over { | |
| border-color: #f97316; | |
| background: #fff8f2; | |
| box-shadow: 0 0 0 4px rgba(249,115,22,0.07); | |
| } | |
| /* βββ Black CTA Button ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .btn-primary { | |
| position: relative; | |
| overflow: hidden; | |
| background: #0f172a; | |
| border: 0; | |
| border-radius: 12px; | |
| color: #ffffff; | |
| font-weight: 600; | |
| cursor: pointer; | |
| transition: transform 0.2s, box-shadow 0.2s, background 0.2s; | |
| letter-spacing: -0.01em; | |
| } | |
| .btn-primary::after { | |
| content: ''; | |
| position: absolute; | |
| top: -50%; left: -80%; | |
| width: 60%; height: 200%; | |
| background: linear-gradient(105deg, transparent 40%, rgba(255,255,255,0.15) 50%, transparent 60%); | |
| transform: skewX(-20deg); | |
| animation: shimmer-light 3s ease-in-out infinite; | |
| } | |
| @keyframes shimmer-light { | |
| 0% { left: -80%; } | |
| 100% { left: 140%; } | |
| } | |
| .btn-primary:hover { | |
| background: #1e293b; | |
| transform: translateY(-1px); | |
| box-shadow: 0 8px 30px rgba(15,23,42,0.25); | |
| } | |
| .btn-primary:active { transform: translateY(0); } | |
| .btn-primary:disabled { | |
| background: #cbd5e1; | |
| color: #94a3b8; | |
| cursor: not-allowed; | |
| transform: none; | |
| box-shadow: none; | |
| } | |
| .btn-primary:disabled::after { display: none; } | |
| /* βββ Outlined Button βββββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .btn-outline { | |
| background: transparent; | |
| border: 1.5px solid var(--border); | |
| border-radius: 12px; | |
| color: var(--muted); | |
| font-weight: 500; | |
| cursor: pointer; | |
| transition: all 0.2s; | |
| } | |
| .btn-outline:hover { | |
| border-color: #94a3b8; | |
| color: var(--text); | |
| background: #f8fafc; | |
| } | |
| /* βββ Progress Bar ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .progress-track { | |
| background: #f1f5f9; | |
| border-radius: 999px; | |
| overflow: hidden; | |
| } | |
| .progress-fill { | |
| height: 100%; | |
| border-radius: 999px; | |
| background: linear-gradient(90deg, #f97316, #fbbf24, #fb923c); | |
| background-size: 200% 100%; | |
| animation: gradient-scroll 2s linear infinite; | |
| transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1); | |
| position: relative; | |
| } | |
| .progress-fill::after { | |
| content: ''; | |
| position: absolute; | |
| inset: 0; | |
| background: linear-gradient(90deg, transparent, rgba(255,255,255,0.5), transparent); | |
| animation: pill-shimmer 1.5s linear infinite; | |
| } | |
| @keyframes gradient-scroll { | |
| 0% { background-position: 0% 50%; } | |
| 100% { background-position: 200% 50%; } | |
| } | |
| @keyframes pill-shimmer { | |
| 0% { transform: translateX(-100%); } | |
| 100% { transform: translateX(400%); } | |
| } | |
| /* βββ Class Pill βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .class-pill { | |
| display: inline-flex; | |
| align-items: center; | |
| gap: 6px; | |
| padding: 4px 10px; | |
| border-radius: 999px; | |
| font-size: 12px; | |
| font-weight: 500; | |
| background: #f8fafc; | |
| border: 1px solid #e5e7eb; | |
| color: #475569; | |
| transition: all 0.2s; | |
| animation: pop-in 0.3s cubic-bezier(0.34, 1.56, 0.64, 1); | |
| } | |
| .class-pill:hover { | |
| background: #fff8f2; | |
| border-color: #fdba74; | |
| color: #c2410c; | |
| transform: scale(1.05); | |
| } | |
| @keyframes pop-in { | |
| 0% { opacity: 0; transform: scale(0.7); } | |
| 100% { opacity: 1; transform: scale(1); } | |
| } | |
| /* βββ Stat Card βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .stat-card { | |
| background: #ffffff; | |
| border: 1px solid #f0f0f0; | |
| border-radius: 14px; | |
| padding: 20px; | |
| transition: all 0.25s; | |
| position: relative; | |
| overflow: hidden; | |
| cursor: default; | |
| } | |
| .stat-card:hover { | |
| border-color: #fdba74; | |
| box-shadow: 0 8px 30px rgba(249,115,22,0.08); | |
| transform: translateY(-3px); | |
| } | |
| .stat-card::before { | |
| content: ''; | |
| position: absolute; | |
| top: 0; left: 0; right: 0; | |
| height: 2px; | |
| background: linear-gradient(90deg, #f97316, #fbbf24); | |
| transform: scaleX(0); | |
| transform-origin: left; | |
| transition: transform 0.3s ease; | |
| } | |
| .stat-card:hover::before { transform: scaleX(1); } | |
| /* βββ Gradient Heading Text βββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .text-gradient { | |
| background: linear-gradient(135deg, #f97316 0%, #f59e0b 50%, #fb923c 100%); | |
| background-clip: text; | |
| -webkit-background-clip: text; | |
| -webkit-text-fill-color: transparent; | |
| background-size: 200% 200%; | |
| animation: gradient-shift 4s ease infinite; | |
| } | |
| @keyframes gradient-shift { | |
| 0% { background-position: 0% 50%; } | |
| 50% { background-position: 100% 50%; } | |
| 100% { background-position: 0% 50%; } | |
| } | |
| /* βββ Word animation ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .word-animate { | |
| display: inline-block; | |
| opacity: 0; | |
| transform: translateY(20px); | |
| animation: word-in 0.5s cubic-bezier(0.4, 0, 0.2, 1) forwards; | |
| } | |
| @keyframes word-in { | |
| to { opacity: 1; transform: translateY(0); } | |
| } | |
| /* βββ Badge βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .badge { | |
| display: inline-flex; | |
| align-items: center; | |
| gap: 6px; | |
| padding: 5px 14px; | |
| border-radius: 999px; | |
| border: 1px solid #fed7aa; | |
| background: #fff7ed; | |
| font-size: 12px; | |
| font-weight: 500; | |
| color: #c2410c; | |
| } | |
| /* βββ Divider βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .divider { | |
| height: 1px; | |
| background: linear-gradient(90deg, transparent, #e5e7eb 20%, #e5e7eb 80%, transparent); | |
| } | |
| /* βββ Step Indicator ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .step-dot { | |
| width: 28px; height: 28px; | |
| border-radius: 50%; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| font-size: 11px; | |
| font-weight: 700; | |
| transition: all 0.4s; | |
| flex-shrink: 0; | |
| } | |
| .step-dot.done { background: #dcfce7; color: #15803d; border: 2px solid #86efac; } | |
| .step-dot.active { background: #0f172a; color: white; border: 2px solid #0f172a; box-shadow: 0 0 0 3px rgba(15,23,42,0.12); } | |
| .step-dot.pending { background: #f8fafc; color: #94a3b8; border: 2px solid #e5e7eb; } | |
| /* βββ Bounce Dots βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .bounce-dot { | |
| display: inline-block; | |
| width: 7px; height: 7px; | |
| border-radius: 50%; | |
| animation: bounce-dot 1.2s ease-in-out infinite; | |
| } | |
| .bounce-dot:nth-child(1) { animation-delay: 0s; } | |
| .bounce-dot:nth-child(2) { animation-delay: 0.2s; } | |
| .bounce-dot:nth-child(3) { animation-delay: 0.4s; } | |
| @keyframes bounce-dot { | |
| 0%, 80%, 100% { transform: scale(0.7); opacity: 0.4; } | |
| 40% { transform: scale(1.2); opacity: 1; } | |
| } | |
| /* βββ Range Input βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| input[type="range"] { | |
| -webkit-appearance: none; | |
| appearance: none; | |
| background: #e5e7eb; | |
| border-radius: 999px; | |
| cursor: pointer; | |
| } | |
| input[type="range"]::-webkit-slider-thumb { | |
| -webkit-appearance: none; | |
| width: 14px; height: 14px; | |
| border-radius: 50%; | |
| background: #0f172a; | |
| cursor: pointer; | |
| } | |
| /* βββ Video UI ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .video-wrapper { background: #000; border-radius: 12px; overflow: hidden; } | |
| .video-wrapper video { width: 100%; display: block; object-fit: contain; } | |
| /* βββ Section spacing βββββββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .section { padding: 80px 0; } | |