Spaces:
Running
Running
can you create a weather widget that mimic the one from perplexity fully interactive
aadabc6 verified | @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap'); | |
| * { | |
| font-family: 'Inter', sans-serif; | |
| } | |
| .weather-card { | |
| backdrop-filter: blur(10px); | |
| background: rgba(255, 255, 255, 0.85); | |
| border: 1px solid rgba(255, 255, 255, 0.2); | |
| } | |
| .weather-gradient { | |
| background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); | |
| } | |
| .animate-pulse-soft { | |
| animation: pulse-soft 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; | |
| } | |
| @keyframes pulse-soft { | |
| 0%, 100% { | |
| opacity: 1; | |
| } | |
| 50% { | |
| opacity: 0.8; | |
| } | |
| } | |
| .weather-icon { | |
| filter: drop-shadow(0 4px 6px rgba(0, 0, 0, 0.1)); | |
| } | |
| .loading-dots { | |
| display: inline-block; | |
| position: relative; | |
| width: 80px; | |
| height: 80px; | |
| } | |
| .loading-dots div { | |
| position: absolute; | |
| top: 33px; | |
| width: 13px; | |
| height: 13px; | |
| border-radius: 50%; | |
| background: #0ea5e9; | |
| animation-timing-function: cubic-bezier(0, 1, 1, 0); | |
| } | |
| .loading-dots div:nth-child(1) { | |
| left: 8px; | |
| animation: loading-dots1 0.6s infinite; | |
| } | |
| .loading-dots div:nth-child(2) { | |
| left: 8px; | |
| animation: loading-dots2 0.6s infinite; | |
| } | |
| .loading-dots div:nth-child(3) { | |
| left: 32px; | |
| animation: loading-dots2 0.6s infinite; | |
| } | |
| .loading-dots div:nth-child(4) { | |
| left: 56px; | |
| animation: loading-dots3 0.6s infinite; | |
| } | |
| @keyframes loading-dots1 { | |
| 0% { transform: scale(0); } | |
| 100% { transform: scale(1); } | |
| } | |
| @keyframes loading-dots3 { | |
| 0% { transform: scale(1); } | |
| 100% { transform: scale(0); } | |
| } | |
| @keyframes loading-dots2 { | |
| 0% { transform: translate(0, 0); } | |
| 100% { transform: translate(24px, 0); } | |
| } | |
| .slide-up { | |
| animation: slideUp 0.3s ease-out; | |
| } | |
| @keyframes slideUp { | |
| from { | |
| opacity: 0; | |
| transform: translateY(20px); | |
| } | |
| to { | |
| opacity: 1; | |
| transform: translateY(0); | |
| } | |
| } |