@tailwind base;@tailwind components;@tailwind utilities;:root{--green-light: #22c55e;--green-dark: #15803d}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.light-glass-card{background-color:#ffffffb3;-webkit-backdrop-filter:blur(12px) saturate(180%);backdrop-filter:blur(12px) saturate(180%);border:1px solid rgba(0,0,0,.05);transition:all .3s cubic-bezier(.4,0,.2,1)}.dark .light-glass-card{background-color:#111111b3;border:1px solid rgba(255,255,255,.1)}.light-glass-card:hover{transform:translateY(-2px);box-shadow:0 10px 30px #0000001a}.dark .light-glass-card:hover{border-color:#22c55e80;box-shadow:0 10px 30px #22c55e1a}.strong-glass-card{background-color:#e8edf2d9;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(0,0,0,.05);transition:all .3s cubic-bezier(.4,0,.2,1)}.dark .strong-glass-card{background-color:#0a0a0ad9;border:1px solid rgba(255,255,255,.1)}.strong-glass-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px #00000026}.dark .strong-glass-card:hover{border-color:#22c55e80;box-shadow:0 20px 40px #22c55e26}@keyframes fade-in-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animation-delay-200{animation-delay:.2s}.animation-delay-400{animation-delay:.4s}@keyframes blob-base{0%{transform-origin:center center;transform:scale(1) rotate(0)}33%{transform-origin:center center;transform:scale(1.15) rotate(120deg)}66%{transform-origin:center center;transform:scale(.95) rotate(240deg)}to{transform-origin:center center;transform:scale(1) rotate(360deg)}}.animate-blob{animation:blob-base 20s infinite ease-in-out}.animation-delay-2000{animation-delay:2s}.animation-delay-4000{animation-delay:4s}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #22c55e4d,0 0 40px #22c55e1a}50%{box-shadow:0 0 35px #22c55e99,0 0 60px #22c55e33}}.animate-pulse-glow{animation:pulse-glow 3s infinite ease-in-out}@keyframes gradient-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.animate-gradient-shift{background-size:200% 200%;animation:gradient-shift 5s ease infinite}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fade-in .3s ease-out forwards}@keyframes scale-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.animate-scale-in{animation:scale-in .4s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.animate-shimmer{animation:shimmer 2s infinite linear;background:linear-gradient(to right,transparent 0%,rgba(255,255,255,.1) 50%,transparent 100%);background-size:1000px 100%}@keyframes number-pop{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.number-pop{animation:number-pop .3s ease-out}html{scroll-behavior:smooth}button:focus-visible,input:focus-visible{outline:2px solid var(--green-light);outline-offset:2px}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;cursor:pointer}input[type=range]::-webkit-slider-track{background:linear-gradient(to right,var(--green-light),var(--green-dark));height:8px;border-radius:4px}input[type=range]::-moz-range-track{background:linear-gradient(to right,var(--green-light),var(--green-dark));height:8px;border-radius:4px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;height:24px;width:24px;border-radius:50%;border:3px solid var(--green-light);box-shadow:0 2px 8px #22c55e4d;transition:all .2s ease}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:0 4px 12px #22c55e80}input[type=range]::-moz-range-thumb{background:#fff;height:24px;width:24px;border-radius:50%;border:3px solid var(--green-light);box-shadow:0 2px 8px #22c55e4d;transition:all .2s ease;cursor:pointer}input[type=range]::-moz-range-thumb:hover{transform:scale(1.2);box-shadow:0 4px 12px #22c55e80}button{transition:all .3s cubic-bezier(.4,0,.2,1)}button:hover{transform:translateY(-2px)}button:active{transform:translateY(0)}.hover-lift{transition:all .3s cubic-bezier(.4,0,.2,1)}.hover-lift:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px #00000026}::selection{background-color:#22c55e4d;color:inherit}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner{animation:spin 1s linear infinite}.gradient-text{background:linear-gradient(135deg,#22c55e,#86efac,#22c55e);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradient-shift 3s ease infinite}
