html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#0f172a}::-webkit-scrollbar-thumb{background:#2563eb;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#1d4ed8}.light ::-webkit-scrollbar-track{background:#dbeafe}.light ::-webkit-scrollbar-thumb{background:#3b82f6}.light ::-webkit-scrollbar-thumb:hover{background:#2563eb}.gradient-text{background:linear-gradient(135deg,#2563eb,#06b6d4);-webkit-background-clip:text;background-clip:text}.gradient-text,.shimmer-text{-webkit-text-fill-color:#0000}.shimmer-text{animation:textShimmer 3s ease-in-out infinite;background:linear-gradient(90deg,#2563eb,#06b6d4,#2563eb);-webkit-background-clip:text;background-clip:text;background-size:200% auto}@keyframes textShimmer{0%{background-position:-200%}to{background-position:200%}}.card-hover{transition:all .3s ease}.card-hover:hover{box-shadow:0 20px 40px #0000004d;transform:translateY(-5px)}.grid-bg{background-image:linear-gradient(#2563eb1a 1px,#0000 0),linear-gradient(90deg,#2563eb1a 1px,#0000 0);background-size:50px 50px}.light .grid-bg{background-image:linear-gradient(#2563eb0d 1px,#0000 0),linear-gradient(90deg,#2563eb0d 1px,#0000 0)}.star-rating{direction:row-reverse;display:inline-flex}.star-rating input{display:none}.star-rating label{color:#64748b;cursor:pointer;font-size:1.5rem;padding:0 .1rem;transition:all .3s ease}.star-rating input:checked~label,.star-rating label:hover,.star-rating label:hover~label{color:#f59e0b;transform:scale(1.2)}.book-cover{border-radius:8px;box-shadow:0 4px 8px #0003;height:200px;object-fit:cover;transition:all .3s ease;width:150px}.book-cover:hover{box-shadow:0 8px 16px #0000004d;transform:scale(1.05) rotate(2deg)}.progress-bar{background-color:#1e293b;border-radius:4px;height:8px;overflow:hidden}.light .progress-bar{background-color:#bfdbfe}.progress-fill{background-color:#2563eb;height:100%;overflow:hidden;position:relative;transition:width .5s ease}.progress-fill:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;width:100%}@keyframes shimmer{0%{left:-100%}to{left:100%}}.particle{border-radius:50%;pointer-events:none;position:absolute;z-index:1}.toast{border-radius:8px;color:#fff;padding:12px 20px;position:fixed;right:20px;top:20px;transform:translateX(150%);transition:transform .3s ease;z-index:1000}.toast.show{transform:translateX(0)}.toast.success{background-color:#10b981}.toast.error{background-color:#ef4444}.toast.warning{background-color:#f59e0b}.heart-btn{cursor:pointer;transition:all .3s ease}.heart-btn:hover{transform:scale(1.2)}.heart-btn.liked{animation:heartbeat 1.5s ease-in-out;color:#ef4444}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.fire-badge{animation:fire 2s ease-in-out infinite;color:#f59e0b}@keyframes fire{0%,to{transform:scale(1) rotate(0deg)}25%{transform:scale(1.1) rotate(-5deg)}75%{transform:scale(1.1) rotate(5deg)}}.phone-input{align-items:center;display:flex}.phone-input select{border-bottom-right-radius:0;border-right:none;border-top-right-radius:0}.phone-input input{border-bottom-left-radius:0;border-top-left-radius:0}.vibe-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;color:#fff;overflow:hidden;padding:20px;position:relative}.vibe-card:before{animation:shine 3s infinite;background:linear-gradient(45deg,#0000,#ffffff1a,#0000);content:"";height:200%;left:-50%;position:absolute;top:-50%;transform:rotate(45deg);width:200%}@keyframes shine{0%{transform:translateX(-100%) translateY(-100%) rotate(45deg)}to{transform:translateX(100%) translateY(100%) rotate(45deg)}}.trending-badge{animation:glow 2s ease-in-out infinite alternate;background:linear-gradient(45deg,#ff6b6b,#feca57);border-radius:20px;color:#fff;font-size:.75rem;font-weight:700;padding:4px 12px}@keyframes glow{0%{box-shadow:0 0 20px #2563eb4d}to{box-shadow:0 0 30px #2563eb99}}.meme-review{background:#f8fafc;border-left:4px solid #f59e0b;border-radius:8px;margin:8px 0;padding:12px}.dark .meme-review{background:#374151}.reaction-btn{cursor:pointer;transition:all .3s ease}.reaction-btn:hover{transform:scale(1.1)}.reaction-btn.active{animation:bounceSoft .6s ease}@keyframes bounceSoft{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.fab{align-items:center;background:linear-gradient(135deg,#2563eb,#06b6d4);border-radius:50%;bottom:30px;box-shadow:0 4px 20px #2563eb66;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:60px;justify-content:center;position:fixed;right:30px;transition:all .3s ease;width:60px;z-index:100}.fab:hover{box-shadow:0 6px 25px #2563eb99;transform:scale(1.1)}.book-modal{align-items:center;background:#000c;display:flex;height:100%;justify-content:center;left:0;opacity:0;position:fixed;top:0;transition:all .3s ease;visibility:hidden;width:100%;z-index:1000}.book-modal.active{opacity:1;visibility:visible}.book-modal-content{background:#1e293b;border-radius:20px;max-height:90vh;max-width:800px;overflow-y:auto;position:relative;transform:scale(.7);transition:transform .3s ease;width:90%}.book-modal.active .book-modal-content{transform:scale(1)}.book-modal-close{align-items:center;background:#00000080;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;position:absolute;right:20px;top:20px;transition:all .3s ease;width:40px;z-index:10}.book-modal-close:hover{background:#ef4444cc;transform:rotate(90deg)}.line-clamp-3{-webkit-line-clamp:3;line-clamp:3}.line-clamp-2,.line-clamp-3{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;line-clamp:2}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes pulseSoft{0%,to{opacity:1}50%{opacity:.8}}@keyframes particleFloat{0%{opacity:0;transform:translate(0) rotate(0deg)}10%{opacity:1}90%{opacity:1}to{opacity:0;transform:translate(var(--tx),var(--ty)) rotate(1turn)}}.animate-fade-in-up{animation:fadeInUp .6s ease-out}.animate-fade-in-down{animation:fadeInDown .6s ease-out}.animate-slide-in-left{animation:slideInLeft .6s ease-out}.animate-slide-in-right{animation:slideInRight .6s ease-out}.animate-float{animation:float 6s ease-in-out infinite}.animate-pulse-soft{animation:pulseSoft 2s ease-in-out infinite}.animate-particle-float{animation:particleFloat 20s linear infinite}.App{text-align:left}
/*# sourceMappingURL=main.19ab28f3.css.map*/