.header{position:relative;padding:2rem 2rem 3rem;text-align:center;overflow:hidden}.header-content{position:relative;z-index:2}.logo{display:inline-flex;align-items:center;gap:1rem;padding:1rem 2rem;background:#0f172a99;border:2px solid rgba(99,102,241,.3);border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #6366f133;transition:all .3s ease}.logo:hover{border-color:#8b5cf699;box-shadow:0 12px 48px #8b5cf64d;transform:translateY(-2px)}.logo-icon{color:#a78bfa;filter:drop-shadow(0 0 10px rgba(167,139,250,.5));animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.logo-text h1{font-size:2.5rem;font-weight:800;background:linear-gradient(135deg,#a78bfa,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0;letter-spacing:-.5px}.tagline{font-size:.9rem;color:#94a3b8;margin:.25rem 0 0;font-weight:300;letter-spacing:1px}.header-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;height:600px;background:radial-gradient(circle,rgba(139,92,246,.15) 0%,transparent 70%);pointer-events:none;animation:pulse 4s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.5;transform:translate(-50%,-50%) scale(1)}50%{opacity:.8;transform:translate(-50%,-50%) scale(1.1)}}@media (max-width: 768px){.logo{flex-direction:column;gap:.5rem;padding:1rem 1.5rem}.logo-text h1{font-size:1.8rem}.tagline{font-size:.8rem}}.search-container{margin:3rem auto;max-width:800px}.search-header{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:1.5rem}.sparkle-icon{color:#fbbf24;animation:sparkle 2s ease-in-out infinite}@keyframes sparkle{0%,to{opacity:1;transform:rotate(0) scale(1)}50%{opacity:.7;transform:rotate(180deg) scale(1.1)}}.search-header h2{font-size:1.8rem;font-weight:600;color:#e0e7ff}.search-form{position:relative}.search-input-wrapper{display:flex;gap:1rem;background:#0f172acc;padding:.5rem;border-radius:16px;border:2px solid rgba(99,102,241,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.search-input-wrapper:focus-within{border-color:#8b5cf699;box-shadow:0 0 30px #8b5cf64d}.search-input{flex:1;background:transparent;border:none;outline:none;color:#e0e7ff;font-size:1rem;padding:.75rem 1rem}.search-input::placeholder{color:#64748b}.search-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 2rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.search-button:hover:not(:disabled){background:linear-gradient(135deg,#7c3aed,#a855f7);transform:translateY(-2px);box-shadow:0 8px 24px #8b5cf666}.search-button:disabled{opacity:.5;cursor:not-allowed}.search-hint{text-align:center;margin-top:1rem;color:#94a3b8;font-size:.9rem}@media (max-width: 768px){.search-input-wrapper{flex-direction:column;gap:.5rem}.search-button{width:100%;justify-content:center}.search-header h2{font-size:1.4rem}}.filter-panel{max-width:800px;margin:2rem auto;padding:1.5rem;background:#0f172a99;border:2px solid rgba(99,102,241,.2);border-radius:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:slideIn .5s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.filter-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;color:#a78bfa;font-weight:600}.filter-options{display:flex;flex-wrap:wrap;gap:.75rem}.filter-chip{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#1e293bcc;border:2px solid rgba(99,102,241,.3);border-radius:12px;color:#cbd5e1;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s ease}.filter-chip:hover{border-color:#8b5cf680;transform:translateY(-2px)}.filter-chip.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-color:#8b5cf6;color:#fff;box-shadow:0 4px 16px #8b5cf666}.filter-emoji{font-size:1.2rem}@media (max-width: 768px){.filter-options{justify-content:center}.filter-chip{flex:1 1 calc(50% - .5rem);min-width:140px;justify-content:center}}.recipe-card{position:relative;background:#0f172acc;border:2px solid rgba(99,102,241,.2);border-radius:20px;overflow:hidden;cursor:pointer;transition:all .4s ease;animation:cardSlideIn .6s ease forwards;opacity:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@keyframes cardSlideIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.recipe-card:hover{transform:translateY(-8px);border-color:#8b5cf680;box-shadow:0 16px 48px #8b5cf64d}.recipe-card:hover .card-glow{opacity:1}.recipe-image-wrapper{position:relative;width:100%;height:220px;overflow:hidden}.recipe-image{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.recipe-card:hover .recipe-image{transform:scale(1.1)}.recipe-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(10,14,39,.9) 0%,transparent 100%);display:flex;align-items:flex-end;justify-content:center;padding:1rem;opacity:0;transition:opacity .3s ease}.recipe-card:hover .recipe-overlay{opacity:1}.view-recipe{padding:.5rem 1.5rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-radius:8px;font-weight:600;font-size:.9rem}.recipe-content{padding:1.5rem}.recipe-title{font-size:1.25rem;font-weight:700;color:#e0e7ff;margin-bottom:1rem;line-height:1.3}.recipe-tags{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.recipe-tag{padding:.35rem .75rem;border-radius:8px;font-size:.8rem;font-weight:500}.recipe-tag.category{background:#6366f133;color:#a78bfa;border:1px solid rgba(99,102,241,.3)}.recipe-tag.area{background:#ec489933;color:#f9a8d4;border:1px solid rgba(236,72,153,.3)}.recipe-meta{display:flex;gap:1rem;color:#94a3b8;font-size:.9rem}.meta-item{display:flex;align-items:center;gap:.4rem}.card-glow{position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;background:linear-gradient(135deg,#6366f1,#8b5cf6,#ec4899);border-radius:20px;opacity:0;z-index:-1;filter:blur(20px);transition:opacity .4s ease}.recipe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;margin:3rem 0;animation:fadeIn .6s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.empty-state{text-align:center;padding:4rem 2rem;margin:3rem 0;background:#0f172a66;border:2px dashed rgba(99,102,241,.3);border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.empty-icon{font-size:4rem;margin-bottom:1rem;animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.empty-state h3{font-size:1.5rem;color:#e0e7ff;margin-bottom:.5rem}.empty-state p{color:#94a3b8;font-size:1rem}@media (max-width: 768px){.recipe-grid{grid-template-columns:1fr;gap:1.5rem}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem;animation:fadeIn .3s ease;overflow-y:auto}.modal-content{position:relative;background:linear-gradient(135deg,#0f172af2,#1e293bf2);border:2px solid rgba(99,102,241,.3);border-radius:24px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 24px 64px #00000080;animation:slideUp .4s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.modal-close{position:absolute;top:1rem;right:1rem;background:#0f172ae6;border:2px solid rgba(99,102,241,.3);border-radius:12px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;color:#e0e7ff;cursor:pointer;transition:all .3s ease;z-index:10}.modal-close:hover{background:#6366f133;border-color:#8b5cf699;transform:rotate(90deg)}.modal-header{position:relative;display:flex;gap:2rem;padding:2rem;border-bottom:2px solid rgba(99,102,241,.2)}.modal-image{width:250px;height:250px;object-fit:cover;border-radius:16px;border:2px solid rgba(99,102,241,.3);box-shadow:0 8px 32px #0000004d}.modal-header-content{flex:1;display:flex;flex-direction:column;justify-content:center}.modal-title{font-size:2rem;font-weight:800;color:#e0e7ff;margin-bottom:1rem;line-height:1.2}.modal-tags{display:flex;gap:.75rem;margin-bottom:1rem}.modal-tag{padding:.5rem 1rem;background:#6366f133;border:1px solid rgba(99,102,241,.3);border-radius:10px;color:#a78bfa;font-size:.9rem;font-weight:600}.modal-meta{display:flex;gap:1.5rem;color:#94a3b8;font-size:1rem}.modal-body{padding:2rem}.modal-section{margin-bottom:2.5rem}.section-title{font-size:1.5rem;font-weight:700;color:#e0e7ff;margin-bottom:1.25rem;display:flex;align-items:center;gap:.5rem}.ingredients-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.75rem}.ingredient-item{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#1e293b80;border-radius:10px;color:#cbd5e1;font-size:.95rem}.ingredient-bullet{color:#8b5cf6;font-size:1.5rem}.ingredient-measure{font-weight:600;color:#a78bfa}.ingredient-name{color:#e0e7ff}.instructions{display:flex;flex-direction:column;gap:1rem}.instruction-step{display:flex;gap:1rem;padding:1rem;background:#1e293b80;border-radius:12px;color:#cbd5e1;line-height:1.6;font-size:.95rem}.step-number{display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-radius:8px;font-weight:700;font-size:.9rem}.video-link{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2rem;background:linear-gradient(135deg,#dc2626,#ef4444);color:#fff;text-decoration:none;border-radius:12px;font-weight:600;transition:all .3s ease}.video-link:hover{background:linear-gradient(135deg,#b91c1c,#dc2626);transform:translateY(-2px);box-shadow:0 8px 24px #dc262666}@media (max-width: 768px){.modal-overlay{padding:1rem}.modal-header{flex-direction:column;gap:1rem}.modal-image{width:100%;height:200px}.modal-title{font-size:1.5rem}.ingredients-list{grid-template-columns:1fr}}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;margin:3rem 0}.spinner{position:relative;width:120px;height:120px;display:flex;align-items:center;justify-content:center}.spinner-ring{position:absolute;width:100%;height:100%;border:3px solid transparent;border-radius:50%;animation:spin 2s linear infinite}.spinner-ring:nth-child(1){border-top-color:#6366f1;animation-duration:1.5s}.spinner-ring:nth-child(2){border-right-color:#8b5cf6;animation-duration:2s}.spinner-ring:nth-child(3){border-bottom-color:#ec4899;animation-duration:2.5s}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner-icon{font-size:2.5rem;animation:bounce 1s ease-in-out infinite}.loading-text{margin-top:2rem;color:#a78bfa;font-size:1.1rem;font-weight:500;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.app{position:relative;min-height:100vh;padding-bottom:2rem}.stars,.stars2,.stars3{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none}.stars{background:transparent url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="2" height="2"><circle cx="1" cy="1" r="1" fill="white" opacity="0.3"/></svg>') repeat;animation:animateStars 100s linear infinite}.stars2{background:transparent url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="3" height="3"><circle cx="1.5" cy="1.5" r="1" fill="white" opacity="0.2"/></svg>') repeat;animation:animateStars 150s linear infinite}.stars3{background:transparent url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="4" height="4"><circle cx="2" cy="2" r="1.5" fill="white" opacity="0.1"/></svg>') repeat;animation:animateStars 200s linear infinite}@keyframes animateStars{0%{transform:translateY(0)}to{transform:translateY(-2000px)}}.main-content{position:relative;z-index:1;max-width:1400px;margin:0 auto;padding:0 2rem}@media (max-width: 768px){.main-content{padding:0 1rem}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#0a0e27,#1a1f3a,#0f1729);color:#e0e7ff;min-height:100vh;overflow-x:hidden}#root{min-height:100vh}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#0f172a80}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#6366f1,#8b5cf6);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#7c3aed,#a855f7)}
