@charset "UTF-8";@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Poppins:wght@300;400;500;600;700;800&display=swap";:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6;font-weight:400;color-scheme:light;color:#1e293b;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;background:#fff}a{font-weight:500;color:#10b981;text-decoration:none;transition:color .3s ease}a:hover{color:#059669}h1,h2,h3,h4,h5,h6{font-family:Poppins,sans-serif;font-weight:600;line-height:1.2;color:#1e293b}button{border-radius:10px;border:none;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .3s ease}button:focus,button:focus-visible{outline:2px solid #10b981;outline-offset:2px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}::selection{background:#10b98133;color:#1e293b}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;color:#1e293b;background:#fff}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;margin-bottom:.5rem}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}p{margin-bottom:1rem}:root{--teal-darkest: #0d9488;--teal-dark: #14b8a6;--teal-medium: #5eead4;--teal-light: #a7f3d0;--teal-lightest: #f0fdfa;--gradient-start: #0d9488;--gradient-mid: #5eead4;--gradient-end: #f0fdfa;--accent-blue: #0ea5e9;--accent-cyan: #06b6d4;--gray-50: #f0fdfa;--gray-100: #ccfbf1;--gray-200: #99f6e4;--gray-300: #5eead4;--gray-400: #2dd4bf;--gray-500: #14b8a6;--gray-600: #0d9488;--gray-700: #0f766e;--gray-800: #115e59;--gray-900: #134e4a;--success: #10b981;--warning: #f59e0b;--error: #ef4444;--info: #0ea5e9;--bg-primary: #ffffff;--bg-secondary: #f0fdfa;--bg-tertiary: #ccfbf1;--text-primary: #134e4a;--text-secondary: #0f766e;--text-tertiary: #0d9488;--text-muted: #14b8a6;--border-light: #a7f3d0;--border-medium: #5eead4;--border-dark: #14b8a6;--shadow-sm: 0 1px 2px 0 rgba(20, 184, 166, .05);--shadow-md: 0 4px 6px -1px rgba(20, 184, 166, .1), 0 2px 4px -1px rgba(20, 184, 166, .06);--shadow-lg: 0 10px 15px -3px rgba(20, 184, 166, .1), 0 4px 6px -2px rgba(20, 184, 166, .05);--shadow-xl: 0 20px 25px -5px rgba(20, 184, 166, .1), 0 10px 10px -5px rgba(20, 184, 166, .04);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-medium{font-weight:500}.text-primary{color:var(--primary-teal)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.bg-primary{background-color:var(--primary-teal)}.bg-secondary{background-color:var(--bg-secondary)}.rounded{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.shadow{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border:none;border-radius:var(--radius-lg);font-size:1rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all var(--transition-normal);gap:.5rem}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--teal-dark),var(--teal-darkest));color:#fff;box-shadow:0 4px 15px #14b8a64d}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #14b8a666}.btn-secondary{background:#fff;color:var(--text-primary);border:2px solid var(--border-light);box-shadow:var(--shadow-sm)}.btn-secondary:hover:not(:disabled){border-color:var(--teal-dark);color:var(--teal-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-outline{background:transparent;color:var(--teal-dark);border:2px solid var(--teal-dark)}.btn-outline:hover:not(:disabled){background:var(--teal-dark);color:#fff}.card{background:#fff;border-radius:var(--radius-xl);padding:2rem;box-shadow:var(--shadow-md);border:1px solid var(--border-light);transition:all var(--transition-normal)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.form-label{display:block;font-weight:600;color:var(--text-primary);margin-bottom:.5rem;font-size:.9rem}.form-input{width:100%;padding:.875rem 1rem;border:2px solid var(--border-light);border-radius:var(--radius-lg);font-size:1rem;transition:all var(--transition-normal);background:#fff}.form-input:focus{outline:none;border-color:var(--primary-teal);box-shadow:0 0 0 3px #10b9811a}.form-input::placeholder{color:var(--text-muted)}.fade-in{animation:fadeIn .6s ease-out}.slide-up{animation:slideUp .6s ease-out}.scale-in{animation:scaleIn .4s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (max-width: 1024px){.container{padding:0 1.5rem}}@media (max-width: 768px){.container{padding:0 1rem}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.25rem}.btn{padding:.625rem 1.25rem;font-size:.9rem}.card{padding:1.5rem}}@media (max-width: 480px){.container{padding:0 .75rem}h1{font-size:1.75rem}h2{font-size:1.5rem}.btn{padding:.5rem 1rem;font-size:.875rem}.card{padding:1.25rem}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}*:focus{outline:2px solid var(--primary-teal);outline-offset:2px}::selection{background:#10b98133;color:var(--text-primary)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(135deg,#0d9488,#14b8a6,#5eead4,#a7f3d0,#f0fdfa);padding-top:80px}.hero-background{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#14b8a61a}.hero-shapes{position:absolute;top:0;left:0;width:100%;height:100%}.shape{position:absolute;border-radius:50%;background:#ffffff1a;animation:float 6s ease-in-out infinite}.shape-1{width:200px;height:200px;top:20%;left:10%;animation-delay:0s}.shape-2{width:150px;height:150px;top:60%;right:15%;animation-delay:2s}.shape-3{width:100px;height:100px;top:30%;right:30%;animation-delay:4s}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(180deg)}}.hero-content{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;max-width:1200px;margin:0 auto;padding:0 2rem}.hero-text{color:#134e4a}.hero-title{font-size:3.5rem;font-weight:700;line-height:1.2;margin-bottom:1.5rem;background:linear-gradient(45deg,#134e4a,#0d9488);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.25rem;margin-bottom:2.5rem;color:#0f766e;line-height:1.6}.hero-buttons{display:flex;gap:1rem;flex-wrap:wrap}.btn{padding:1rem 2rem;border:none;border-radius:50px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block;text-align:center}.btn-primary{background:linear-gradient(45deg,#14b8a6,#0d9488);color:#fff;box-shadow:0 4px 15px #14b8a666}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #14b8a699}.btn-secondary{background:#fffc;color:#134e4a;border:2px solid rgba(20,184,166,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-secondary:hover{background:#14b8a61a;transform:translateY(-2px)}.hero-visual{position:relative;display:flex;justify-content:center;align-items:center;height:400px}.ai-brain-glow{width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(20,184,166,.3) 0%,transparent 70%);animation:pulse 2s ease-in-out infinite;position:relative}.ai-brain-glow:before{content:"🧠";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:4rem;animation:heartbeat 1.5s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:.7}50%{transform:scale(1.1);opacity:1}}@keyframes heartbeat{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.1)}}.floating-icons{position:absolute;top:0;left:0;width:100%;height:100%}.food-icon{position:absolute;font-size:2rem;animation:floatIcon 3s ease-in-out infinite}.food-icon:nth-child(1){top:20%;left:10%;animation-delay:0s}.food-icon:nth-child(2){top:30%;right:20%;animation-delay:.5s}.food-icon:nth-child(3){bottom:30%;left:20%;animation-delay:1s}.food-icon:nth-child(4){bottom:20%;right:10%;animation-delay:1.5s}@keyframes floatIcon{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-15px) rotate(10deg)}}@media (max-width: 768px){.hero-content{grid-template-columns:1fr;gap:2rem;text-align:center}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.1rem}.hero-buttons{justify-content:center}.btn{padding:.8rem 1.5rem;font-size:1rem}.hero-visual{height:300px}.ai-brain-glow{width:150px;height:150px}.ai-brain-glow:before{font-size:3rem}}@media (max-width: 480px){.hero-content{padding:0 1rem}.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}.btn{padding:.7rem 1.25rem;font-size:.9rem}.hero-visual{height:250px}.ai-brain-glow{width:120px;height:120px}.ai-brain-glow:before{font-size:2.5rem}}.features{padding:5rem 0;background:linear-gradient(135deg,#f0fdfa,#ccfbf1)}.features-header{text-align:center;margin-bottom:4rem}.features-title{font-size:2.5rem;font-weight:700;color:#134e4a;margin-bottom:1rem;background:linear-gradient(45deg,#134e4a,#0d9488);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.features-subtitle{font-size:1.2rem;color:#0f766e;max-width:600px;margin:0 auto;line-height:1.6}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.feature-card{background:#fff;border-radius:20px;padding:2.5rem 2rem;text-align:center;position:relative;overflow:hidden;transition:all .3s ease;box-shadow:0 4px 20px #00000014;border:1px solid rgba(0,0,0,.05)}.feature-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #00000026}.feature-card:hover .feature-hover-effect{opacity:1;transform:scale(1)}.feature-icon{font-size:3.5rem;margin-bottom:1.5rem;display:block;transition:transform .3s ease}.feature-card:hover .feature-icon{transform:scale(1.1)}.feature-title{font-size:1.5rem;font-weight:600;color:#1e293b;margin-bottom:1rem;transition:color .3s ease}.feature-card:hover .feature-title{color:var(--accent-color)}.feature-description{color:#64748b;line-height:1.6;font-size:1rem}.feature-hover-effect{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,var(--accent-color),transparent);opacity:0;transform:scale(.8);transition:all .3s ease;border-radius:20px;z-index:-1}.feature-card:nth-child(1){--accent-color: #10b981}.feature-card:nth-child(2){--accent-color: #3b82f6}.feature-card:nth-child(3){--accent-color: #f59e0b}.feature-card:nth-child(4){--accent-color: #8b5cf6}@media (max-width: 768px){.features{padding:3rem 0}.features-title{font-size:2rem}.features-subtitle{font-size:1.1rem}.features-grid{grid-template-columns:1fr;gap:1.5rem}.feature-card{padding:2rem 1.5rem}.feature-icon{font-size:3rem}.feature-title{font-size:1.3rem}}@media (max-width: 480px){.container{padding:0 1rem}.feature-card{padding:1.5rem 1rem}.feature-icon{font-size:2.5rem}}.how-it-works{padding:5rem 0;background:#fff}.how-it-works-header{text-align:center;margin-bottom:4rem}.how-it-works-title{font-size:2.5rem;font-weight:700;color:#1e293b;margin-bottom:1rem;background:linear-gradient(45deg,#1e293b,#475569);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.how-it-works-subtitle{font-size:1.2rem;color:#64748b;max-width:600px;margin:0 auto;line-height:1.6}.steps-container{display:flex;justify-content:space-between;align-items:flex-start;position:relative;gap:2rem}.step-card{flex:1;text-align:center;position:relative;padding:2rem 1rem;background:#fff;border-radius:20px;box-shadow:0 4px 20px #00000014;transition:all .3s ease;border:2px solid transparent}.step-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #00000026;border-color:var(--step-color)}.step-number{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--step-color),var(--step-color));color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;margin:0 auto 1.5rem;position:relative;z-index:2;box-shadow:0 4px 15px #0003}.step-icon{font-size:3rem;margin-bottom:1.5rem;display:block;transition:transform .3s ease}.step-card:hover .step-icon{transform:scale(1.1)}.step-title{font-size:1.4rem;font-weight:600;color:#1e293b;margin-bottom:1rem;transition:color .3s ease}.step-card:hover .step-title{color:var(--step-color)}.step-description{color:#64748b;line-height:1.6;font-size:1rem}.step-connector{position:absolute;top:50%;right:-2rem;transform:translateY(-50%);z-index:1;display:flex;align-items:center;gap:.5rem}.connector-line{width:60px;height:2px;background:linear-gradient(90deg,var(--step-color),#e2e8f0);border-radius:1px}.connector-arrow{color:var(--step-color);font-size:1.2rem;font-weight:700;animation:bounce 2s infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translate(0)}40%{transform:translate(5px)}60%{transform:translate(3px)}}@media (max-width: 768px){.how-it-works{padding:3rem 0}.how-it-works-title{font-size:2rem}.how-it-works-subtitle{font-size:1.1rem}.steps-container{flex-direction:column;gap:3rem}.step-card{padding:2rem 1.5rem}.step-connector{display:none}.step-number{width:50px;height:50px;font-size:1.2rem}.step-icon{font-size:2.5rem}.step-title{font-size:1.2rem}}@media (max-width: 480px){.container{padding:0 1rem}.step-card{padding:1.5rem 1rem}.step-number{width:45px;height:45px;font-size:1rem}.step-icon{font-size:2rem}}.demo{padding:5rem 0;background:linear-gradient(135deg,#f1f5f9,#e2e8f0)}.demo-header{text-align:center;margin-bottom:4rem}.demo-title{font-size:2.5rem;font-weight:700;color:#1e293b;margin-bottom:1rem;background:linear-gradient(45deg,#1e293b,#475569);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.demo-subtitle{font-size:1.2rem;color:#64748b;max-width:600px;margin:0 auto;line-height:1.6}.demo-carousel{position:relative;overflow:hidden;border-radius:20px;background:#fff;box-shadow:0 20px 40px #0000001a}.carousel-container{position:relative;height:500px}.demo-slide{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transform:translate(100%);transition:all .5s ease;display:flex;align-items:center;justify-content:center;padding:2rem}.demo-slide.active{opacity:1;transform:translate(0)}.slide-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;width:100%;max-width:800px}.slide-visual{display:flex;justify-content:center;align-items:center}.mockup-screen{width:300px;height:200px;background:#1e293b;border-radius:15px;padding:1rem;box-shadow:0 10px 30px #0000004d;position:relative;overflow:hidden}.screen-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.screen-dots{display:flex;gap:.5rem}.screen-dots span{width:8px;height:8px;border-radius:50%;background:#64748b}.screen-dots span:first-child{background:#ef4444}.screen-dots span:nth-child(2){background:#f59e0b}.screen-dots span:last-child{background:#10b981}.screen-title{color:#fff;font-size:.9rem;font-weight:600}.screen-content{text-align:center;color:#fff}.screen-icon{font-size:3rem;margin-bottom:.5rem}.screen-text{font-size:.8rem;opacity:.8}.slide-info{text-align:left}.slide-title{font-size:2rem;font-weight:700;color:#1e293b;margin-bottom:1rem}.slide-description{font-size:1.1rem;color:#64748b;margin-bottom:2rem;line-height:1.6}.before-after{display:flex;align-items:center;gap:1rem;background:#f8fafc;padding:1.5rem;border-radius:15px;border:1px solid #e2e8f0}.before,.after{flex:1;text-align:center}.label{display:block;font-size:.9rem;font-weight:600;color:#64748b;margin-bottom:.5rem}.text{display:block;font-size:1rem;color:#1e293b;font-weight:500}.arrow{font-size:1.5rem;color:#10b981;font-weight:700;animation:bounce 2s infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translate(0)}40%{transform:translate(3px)}60%{transform:translate(1px)}}.carousel-controls{display:flex;justify-content:center;gap:.5rem;padding:1.5rem;background:#f8fafc}.control-dot{width:12px;height:12px;border-radius:50%;border:none;background:#cbd5e1;cursor:pointer;transition:all .3s ease}.control-dot.active{background:#10b981;transform:scale(1.2)}.control-dot:hover{background:#64748b}@media (max-width: 768px){.demo{padding:3rem 0}.demo-title{font-size:2rem}.demo-subtitle{font-size:1.1rem}.carousel-container{height:400px}.slide-content{grid-template-columns:1fr;gap:2rem;text-align:center}.slide-info{text-align:center}.mockup-screen{width:250px;height:160px}.screen-icon{font-size:2.5rem}.slide-title{font-size:1.5rem}.before-after{flex-direction:column;gap:1rem}.arrow{transform:rotate(90deg)}}@media (max-width: 480px){.container{padding:0 1rem}.carousel-container{height:350px}.demo-slide{padding:1rem}.mockup-screen{width:200px;height:130px}.screen-icon{font-size:2rem}.slide-title{font-size:1.3rem}}.community{padding:5rem 0;background:#fff}.community-header{text-align:center;margin-bottom:4rem}.community-title{font-size:2.5rem;font-weight:700;color:#1e293b;margin-bottom:1rem;background:linear-gradient(45deg,#1e293b,#475569);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.community-subtitle{font-size:1.2rem;color:#64748b;max-width:600px;margin:0 auto;line-height:1.6}.challenges-section{margin-bottom:5rem}.challenges-title{font-size:2rem;font-weight:600;color:#1e293b;text-align:center;margin-bottom:3rem}.challenges-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.challenge-card{background:#fff;border-radius:20px;padding:2rem;text-align:center;position:relative;overflow:hidden;transition:all .3s ease;box-shadow:0 4px 20px #00000014;border:2px solid transparent}.challenge-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #00000026;border-color:var(--challenge-color)}.challenge-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--challenge-color),var(--challenge-color))}.challenge-icon{font-size:3rem;margin-bottom:1.5rem;display:block;transition:transform .3s ease}.challenge-card:hover .challenge-icon{transform:scale(1.1)}.challenge-name{font-size:1.3rem;font-weight:600;color:#1e293b;margin-bottom:1rem;transition:color .3s ease}.challenge-card:hover .challenge-name{color:var(--challenge-color)}.challenge-description{color:#64748b;margin-bottom:1.5rem;line-height:1.6}.challenge-stats{margin-bottom:1.5rem}.participants{background:#f1f5f9;color:#475569;padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:500}.join-challenge-btn{background:linear-gradient(135deg,var(--challenge-color),var(--challenge-color));color:#fff;border:none;padding:.8rem 2rem;border-radius:25px;font-weight:600;cursor:pointer;transition:all .3s ease;width:100%}.join-challenge-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0003}.testimonials-section{margin-top:5rem}.testimonials-title{font-size:2rem;font-weight:600;color:#1e293b;text-align:center;margin-bottom:3rem}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.testimonial-card{background:#f8fafc;border-radius:20px;padding:2rem;text-align:center;transition:all .3s ease;border:1px solid #e2e8f0}.testimonial-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px #0000001a;background:#fff}.quote-icon{font-size:2rem;margin-bottom:1rem;opacity:.7}.testimonial-quote{font-size:1.1rem;color:#1e293b;font-style:italic;line-height:1.6;margin-bottom:1.5rem;position:relative}.testimonial-quote:before{content:'"';font-size:3rem;color:#10b981;position:absolute;top:-10px;left:-10px;opacity:.3}.testimonial-author{display:flex;flex-direction:column;gap:.25rem}.testimonial-author strong{color:#1e293b;font-weight:600}.testimonial-author span{color:#64748b;font-size:.9rem}@media (max-width: 768px){.community{padding:3rem 0}.community-title{font-size:2rem}.community-subtitle{font-size:1.1rem}.challenges-title,.testimonials-title{font-size:1.5rem}.challenges-grid,.testimonials-grid{grid-template-columns:1fr;gap:1.5rem}.challenge-card,.testimonial-card{padding:1.5rem}.challenge-icon{font-size:2.5rem}.challenge-name{font-size:1.2rem}.testimonial-quote{font-size:1rem}}@media (max-width: 480px){.container{padding:0 1rem}.challenge-card,.testimonial-card{padding:1.25rem}.challenge-icon{font-size:2rem}.join-challenge-btn{padding:.7rem 1.5rem}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;overflow:hidden}.login-container:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="25" cy="25" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="75" cy="75" r="1" fill="rgba(255,255,255,0.1)"/><circle cx="50" cy="10" r="0.5" fill="rgba(255,255,255,0.05)"/><circle cx="10" cy="60" r="0.5" fill="rgba(255,255,255,0.05)"/><circle cx="90" cy="40" r="0.5" fill="rgba(255,255,255,0.05)"/></pattern></defs><rect width="100" height="100" fill="url(%23grain)"/></svg>');opacity:.3}.login-card{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;padding:3rem;width:100%;max-width:450px;box-shadow:0 20px 40px #0000001a;border:1px solid rgba(255,255,255,.2);position:relative;z-index:1}.login-header{text-align:center;margin-bottom:2rem}.login-header h2{font-size:2rem;font-weight:700;color:#1e293b;margin-bottom:.5rem;background:linear-gradient(45deg,#1e293b,#475569);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-header p{color:#64748b;font-size:1rem;line-height:1.5}.login-form{margin-bottom:2rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:600;color:#374151;margin-bottom:.5rem;font-size:.9rem}.form-group input{width:100%;padding:.875rem 1rem;border:2px solid #e5e7eb;border-radius:10px;font-size:1rem;transition:all .3s ease;background:#fff}.form-group input:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.form-group input::placeholder{color:#9ca3af}.form-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:.5rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#6b7280;cursor:pointer}.checkbox-label input[type=checkbox]{width:auto;margin:0}.forgot-link{color:#10b981;text-decoration:none;font-size:.9rem;font-weight:500;transition:color .3s ease}.forgot-link:hover{color:#059669}.login-btn{width:100%;padding:1rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #10b9814d}.login-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #10b98166}.login-btn:active{transform:translateY(0)}.login-divider{text-align:center;margin:2rem 0;position:relative}.login-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#e5e7eb}.login-divider span{background:#fff;padding:0 1rem;color:#9ca3af;font-size:.9rem;position:relative}.social-login{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.social-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.875rem 1rem;border:2px solid #e5e7eb;border-radius:10px;background:#fff;color:#374151;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s ease}.social-btn:hover{border-color:#d1d5db;transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.google-btn:hover{border-color:#4285f4;color:#4285f4}.apple-btn:hover{border-color:#000;color:#000}.login-switch{text-align:center}.login-switch p{color:#6b7280;font-size:.9rem;margin:0}.switch-btn{background:none;border:none;color:#10b981;font-weight:600;cursor:pointer;text-decoration:underline;margin-left:.5rem;transition:color .3s ease}.switch-btn:hover{color:#059669}@media (max-width: 768px){.login-container{padding:1rem}.login-card{padding:2rem}.login-header h2{font-size:1.75rem}.form-options{flex-direction:column;align-items:flex-start;gap:1rem}}@media (max-width: 480px){.login-card{padding:1.5rem}.login-header h2{font-size:1.5rem}.login-header p{font-size:.9rem}.form-group input{padding:.75rem}.login-btn{padding:.875rem}.social-btn{padding:.75rem;font-size:.9rem}}#toast-notification{position:fixed;top:60px;right:20px;padding:15px;border-radius:5px;box-shadow:0 4px 8px #0000001a;z-index:1000;font-family:sans-serif;font-size:16px;background-color:#fff;color:#333;transition:transform .5s ease-in-out,opacity .5s ease-in-out}.toast-hidden{opacity:0;transform:translateY(-20px);pointer-events:none}.toast-visible{opacity:1;transform:translateY(0)}.toast-success{border-left:5px solid #0d9488}.toast-error{border-left:5px solid #d9534f}.progress-bar-container{height:4px;width:100%;margin-top:10px;overflow:hidden;position:relative;border-radius:2px}.progress-bar-fill{height:100%;transition:width .1s linear}.progress-bar-success .progress-bar-fill{background-color:#0d9488}.progress-bar-error .progress-bar-fill{background-color:#d9534f}.toast-content{color:#000;margin-bottom:5px}.footer{background:linear-gradient(135deg,#134e4a,#0d9488);color:#fff;padding:4rem 0 2rem;position:relative;overflow:hidden}.footer:before{content:"";position:absolute;top:0;left:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,#14b8a6,transparent)}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.footer-content{display:flex;flex-direction:column;gap:3rem;margin-bottom:3rem}.footer-main{display:flex;justify-content:center;gap:3rem;margin-bottom:2rem}.footer-brand{display:flex;flex-direction:column;gap:1.5rem}.footer-logo h3{font-size:1.8rem;font-weight:700;color:#14b8a6;margin-bottom:.5rem;background:linear-gradient(45deg,#14b8a6,#5eead4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.footer-logo p{color:#94a3b8;font-size:.9rem;margin:0}.footer-description p{color:#cbd5e1;line-height:1.6;font-size:.95rem}.footer-links{display:flex;justify-content:space-between;gap:4rem;flex-wrap:nowrap}.footer-column{display:flex;flex-direction:column;gap:1.5rem;flex:1;min-width:250px;max-width:300px}.footer-column h4{font-size:1.2rem;font-weight:600;color:#f1f5f9;margin-bottom:1.5rem;position:relative;letter-spacing:.5px}.footer-column h4:after{content:"";position:absolute;bottom:-8px;left:0;width:40px;height:3px;background:#14b8a6;border-radius:2px}.footer-column ul{list-style:none;padding:0;margin:0}.footer-column li{margin-bottom:1rem}.footer-column a{color:#cbd5e1;text-decoration:none;font-size:1rem;font-weight:400;transition:all .3s ease;position:relative;display:inline-block;padding:.25rem 0}.footer-column a:hover{color:#14b8a6;transform:translate(5px)}.footer-column a:before{content:"";position:absolute;left:-20px;top:50%;transform:translateY(-50%);width:0;height:2px;background:#14b8a6;transition:width .3s ease;border-radius:1px}.footer-column a:hover:before{width:15px}.footer-social{text-align:center;padding:2rem 0;border-top:1px solid rgba(255,255,255,.1)}.footer-social h4{font-size:1.1rem;font-weight:600;color:#f1f5f9;margin-bottom:1.5rem;position:relative}.footer-social h4:after{content:"";position:absolute;bottom:-5px;left:50%;transform:translate(-50%);width:30px;height:2px;background:#14b8a6;border-radius:1px}.social-icons{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.social-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#14b8a61a;border:1px solid rgba(20,184,166,.3);border-radius:50%;color:#14b8a6;transition:all .3s ease;text-decoration:none}.social-link:hover{background:#14b8a6;color:#fff;transform:translateY(-2px);box-shadow:0 5px 15px #14b8a666}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.footer-disclaimer{flex:1;min-width:300px}.footer-disclaimer p{color:#94a3b8;font-size:.85rem;line-height:1.5;margin:0}.footer-disclaimer strong{color:#fbbf24}.footer-copyright{color:#94a3b8;font-size:.85rem}.footer-copyright p{margin:0}@media (max-width: 1024px){.footer-main{grid-template-columns:1fr 1fr;gap:3rem}.footer-links{gap:3rem}.footer-column{min-width:200px;max-width:none}}@media (max-width: 768px){.footer{padding:3rem 0 2rem}.footer-main{grid-template-columns:1fr;gap:2.5rem}.footer-links{flex-direction:column;gap:2rem}.footer-column{min-width:auto;max-width:none}.footer-column h4{font-size:1.1rem;margin-bottom:1.25rem}.footer-column a{font-size:.95rem}.footer-bottom{flex-direction:column;text-align:center;gap:1rem}.footer-disclaimer{min-width:auto}}@media (max-width: 480px){.container{padding:0 1rem}.footer-main{gap:2rem}.footer-links{gap:1.5rem}.footer-column{min-width:auto;max-width:none}.footer-logo h3{font-size:1.5rem}.footer-column h4{font-size:1rem;margin-bottom:1rem}.footer-column a{font-size:.9rem;padding:.2rem 0}.footer-column li{margin-bottom:.75rem}.social-link{width:35px;height:35px}.footer-disclaimer p,.footer-copyright p{font-size:.8rem}}.profile-container{min-height:100vh;display:flex;justify-content:center;padding:40px 20px}.profile-card{background:#fff;width:100%;max-width:600px;border-radius:16px;padding:30px;box-shadow:0 8px 25px #16a34a14;border:1px solid #e5fbe8}.profile-header{display:flex;gap:20px;align-items:center;margin-bottom:25px}.profile-photo{width:90px;height:90px;border-radius:50%;object-fit:cover;border:3px solid #1e293b}.profile-email{color:#4b5563;font-size:14px}.joined-date{font-size:13px;color:#6b7280;margin-top:4px}.profile-section{margin-bottom:20px}.profile-section h3{margin-bottom:6px;font-size:16px;color:#1e293b}.profile-section p{color:#374151;font-size:14px}.profile-stats{margin-top:20px}.stat-box{background:#f0fdf4;padding:20px;border-radius:12px;text-align:center;border:1px solid #bbf7d0;transition:.2s ease}.stat-box:hover{background:#dcfce7}.stat-box h3{font-size:26px;margin-bottom:6px;color:#1e293b}.profile-actions{margin-top:25px;text-align:right}.edit-btn{padding:10px 18px;border:none;background:linear-gradient(135deg,#14b8a6,#0d9488);color:#fff;border-radius:8px;cursor:pointer;font-weight:500;transition:.2s ease}.edit-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #14b8a666}.profile-loading,.profile-login-msg{text-align:center;margin-top:100px;font-size:18px;color:#15803d}.user-details-form-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;overflow:hidden;background-color:#f8fcfb;animation:fadeIn .8s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.form-content{max-width:700px;width:100%;padding:30px;background-color:#fff;border-radius:12px;box-shadow:0 5px 20px #00000014;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;animation:scaleUp .7s ease-in-out}@keyframes scaleUp{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.form-header{text-align:center;margin-bottom:30px}.form-header h2{font-size:1.8rem;color:#25725c;font-weight:700;margin-bottom:5px}.form-header p{color:#666;font-size:.95em}.form-section{border:1px solid #e0e0e0;padding:25px;margin-bottom:25px;border-radius:10px;transition:box-shadow .3s ease,transform .3s ease}.form-section:hover{box-shadow:0 6px 15px #17a2b826;transform:translateY(-4px)}legend{font-size:1.2em;font-weight:600;color:#62bfae;padding:0 10px}.input-label{display:block;margin-bottom:10px;font-weight:600;color:#555;font-size:.95em}.input-row{display:flex;gap:20px}.form-group{flex:1;margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:600;color:#555}.form-group input[type=number],.form-group input[type=text],.form-group select{width:100%;padding:12px 15px;border:1px solid #ccc;border-radius:8px;box-sizing:border-box;transition:border-color .3s,box-shadow .3s}.form-group input:focus,.form-group select:focus{border-color:#17a2b8;box-shadow:0 0 6px #17a2b866;outline:none}.check-radio-group{display:flex;flex-wrap:wrap;gap:25px;margin-top:5px;margin-bottom:15px}.checkbox-label,.radio-label{display:flex;align-items:center;font-weight:400;cursor:pointer;color:#444}.radio-label-top{margin-top:3px}.check-radio-group input[type=checkbox],.check-radio-group input[type=radio]{appearance:none;-webkit-appearance:none;width:12px;height:12px;border:2px solid #ccc;border-radius:4px;margin-right:8px;transition:border-color .2s,background-color .2s;cursor:pointer}.check-radio-group input[type=radio]{border-radius:50%}.check-radio-group input:checked{border-color:#8df3a5;background-color:#28a745}.check-radio-group input[type=checkbox]:checked:before{content:"✓";display:block;color:#fff;font-size:12px;text-align:center;line-height:16px}input[name=foodAllergies]{padding:12px 15px;border-radius:8px;border:1px solid #ccc;width:100%;font-size:.95em;transition:border-color .3s,box-shadow .3s}input[name=foodAllergies]:focus{border-color:#17a2b8;box-shadow:0 0 6px #17a2b866;outline:none}.nutriwise-button{width:100%;padding:14px;background-color:#28a745;color:#fff;border:none;border-radius:50px;font-size:1.1em;font-weight:600;cursor:pointer;margin-top:15px;position:relative;overflow:hidden;transition:transform .2s ease,background-color .3s,box-shadow .3s}.nutriwise-button:hover{background-color:#218838;box-shadow:0 4px 10px #28a74566;transform:scale(1.05)}.nutriwise-button:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:#fff3;transition:left .4s ease}.nutriwise-button:hover:after{left:100%}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,.1);padding:1rem 0}.nav-container{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between}.nav-logo{display:flex;align-items:center;gap:.75rem;font-weight:700;font-size:1.5rem;color:#1e293b;position:relative;overflow:hidden}.logo-icon{width:40px;height:40px;animation:logoPulse 2s ease-in-out infinite;display:flex;align-items:center;justify-content:center}.logo-icon img{width:100%;height:100%;object-fit:contain;border-radius:50%}.logo-text{background:linear-gradient(45deg,#14b8a6,#0d9488);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:logoReveal 3s ease-in-out;opacity:0;transform:translate(-20px);animation-fill-mode:forwards;animation-delay:1s}@keyframes logoPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes logoReveal{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.nav-links{display:flex;align-items:center;gap:2rem}.nav-link{color:#1e293b;text-decoration:none;font-weight:500;font-size:1rem;transition:color .3s ease;position:relative}.nav-link:hover{color:#0d9488}.nav-link:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background:#0d9488;transition:width .3s ease}.nav-link:hover:after{width:100%}.nav-actions{display:flex;align-items:center;gap:1rem}.nav-btn{padding:.75rem 1.5rem;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease;border:none;text-decoration:none;display:inline-block;text-align:center}.nav-btn-secondary{background:transparent;color:#1e293b;border:1px solid #e2e8f0}.nav-btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1}.nav-btn-primary{background:linear-gradient(135deg,#14b8a6,#0d9488);color:#fff;box-shadow:0 4px 15px #14b8a64d}.nav-btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #14b8a666}@media (max-width: 768px){.nav-container{padding:0 1rem}.nav-links{display:none}.nav-actions{gap:.5rem}.nav-btn{padding:.625rem 1rem;font-size:.9rem}.logo-text{font-size:1.25rem}}@media (max-width: 480px){.nav-container{padding:0 .75rem}.nav-actions{flex-direction:column;gap:.5rem}.nav-btn{padding:.5rem .75rem;font-size:.85rem}}.app-container{display:flex;flex-direction:column;min-height:100vh}.main-content-wrapper{display:flex;flex:1;padding-top:60px}.main-content{flex:1;padding:20px;overflow-y:auto}.sidebar{background-color:#f8f9fa;border-right:1px solid #e9ecef;transition:width .3s ease-in-out,min-width .3s ease-in-out;display:flex;flex-direction:column;padding:15px 0}.sidebar.expanded{width:240px;min-width:240px}.sidebar.collapsed{width:60px;min-width:60px;align-items:center;padding:15px 5px}.sidebar-header{display:flex;justify-content:space-between;align-items:center;padding:0 15px 15px;white-space:nowrap;overflow:hidden}.sidebar.collapsed .sidebar-header{justify-content:center;padding:0 0 15px}.sidebar-header h3{margin:0;font-size:1.2rem;color:#00796b}.collapse-btn{background:none;border:none;cursor:pointer;padding:8px;border-radius:50%;transition:background-color .2s;line-height:0;color:#6c757d}.collapse-btn:hover{background-color:#e2e6ea;color:#333}.collapse-btn svg{width:18px;height:18px;display:block}.sidebar-nav{display:flex;flex-direction:column;flex:1}.sidebar-link{display:flex;padding:10px 15px;color:#333;text-decoration:none;align-items:center;font-weight:500;border-radius:4px;margin:5px 10px;transition:background-color .2s,color .2s}.sidebar-link:hover{background-color:#e0f2f1;color:#00796b}.sidebar-link.active{background-color:#00796b;color:#fff}.sidebar.collapsed .sidebar-link{justify-content:center;padding:10px}.sidebar.collapsed .sidebar-link .link-icon{font-size:1.2rem}.sidebar.collapsed .sidebar-link:hover{background-color:#e0f2f1;color:#00796b}.link-icon{margin-right:10px}.upload-report-container{max-width:600px;margin:40px auto;padding:30px;background-color:#fff;border-radius:12px;box-shadow:0 10px 30px #00000014;font-family:Inter,sans-serif}.upload-report-header{font-size:1.8rem;color:#00796b;margin-bottom:10px;border-bottom:2px solid #e0f2f1;padding-bottom:10px}.upload-report-description{color:#6c757d;margin-bottom:30px;font-size:1rem}.upload-form .form-group{margin-bottom:20px}.upload-form label{display:block;font-weight:600;color:#333;margin-bottom:8px;font-size:.95rem}.upload-form input[type=file],.upload-form select{width:100%;padding:12px;border:1px solid #ced4da;border-radius:8px;box-sizing:border-box;font-size:1rem;color:#495057;transition:border-color .2s,box-shadow .2s}.upload-form input[type=file]:focus,.upload-form select:focus{border-color:#00796b;box-shadow:0 0 0 3px #00796b33;outline:none}.file-info{margin-top:10px;font-size:.85rem;color:#00796b;background-color:#e0f2f1;padding:8px 12px;border-radius:6px}.report-upload-btn{width:100%;padding:15px;background-color:#00796b;color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:background-color .3s,opacity .3s,transform .1s;box-shadow:0 4px 10px #00796b4d;margin-bottom:10px}.report-upload-btn:hover:not(:disabled){background-color:#006056}.report-upload-btn:disabled{background-color:#aeb5bb;cursor:not-allowed;opacity:.8}.reports-container{width:100%;margin:40px auto;padding:30px;background-color:#fff;border-radius:12px;box-shadow:0 10px 30px #00000014;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#333}.reports-container h2{text-align:center;color:#00796b;margin-bottom:20px;font-weight:600;font-size:2.2em}.reports-container p{text-align:center;color:#555;margin-bottom:40px;font-size:1.1em}.loading-container,.error-container,.no-reports-container{text-align:center;padding:80px 20px;color:#666;font-size:1.2em}.error-container{color:#d9534f;background-color:#f2dede;border:1px solid #ebccd1;padding:15px;border-radius:8px}.no-reports-container p{margin-top:15px;font-style:italic;color:#888}.reports-list{display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.report-card{background-color:#f7f7f7;border:1px solid #e0e0e0;border-radius:10px;padding:25px;box-shadow:0 4px 12px #0000000d;transition:all .3s ease-in-out;display:flex;flex-direction:column}.report-card:hover{transform:translateY(-8px);box-shadow:0 10px 20px #0000001a;background-color:#eef7f4}.report-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.report-title{margin:0;color:#00796b;font-size:1.4em;font-weight:500;line-height:1.2}.report-type{font-size:.9em;color:#888;background-color:#eef;padding:4px 8px;border-radius:4px}.report-date{font-size:.9em;color:#777;margin-bottom:20px;border-bottom:1px solid #eee;padding-bottom:15px}.report-link{display:inline-block;margin-top:auto;padding:12px 18px;background-color:#00796b;color:#fff;text-decoration:none;border-radius:6px;font-weight:600;text-align:center;transition:background-color .3s ease-in-out}.report-link:hover{background-color:#2e8b57}.friends-page{padding:24px;background-color:#f0f2f5;min-height:100vh;display:flex;flex-direction:column;gap:24px}.search-section{width:100%}.search-bar{width:100%;padding:12px 15px;border-radius:6px;border:1px solid #ccd0d5;font-size:1rem;margin-top:8px}.search-bar:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.action-message{margin-top:10px;font-size:.9rem;color:#007bff}.card-container{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background-color:#fff;border-radius:8px;padding:20px;box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d;transition:all .3s cubic-bezier(.25,.8,.25,1)}.card:hover{box-shadow:0 10px 20px #00000026,0 6px 6px #0003;transform:translateY(-2px)}.card h2{font-size:1.25rem;color:#050505;margin-top:0;padding-bottom:10px;border-bottom:1px solid #e9ebee}.results-list{margin-top:15px;max-height:300px;overflow-y:auto}.result-card{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #f0f2f5}.result-card:last-child{border-bottom:none}.result-card p{margin:0;color:#333}.empty-message{color:#65676b;font-size:.9rem;text-align:center;padding-top:20px}.actions{display:flex;gap:8px}.btn{border:none;padding:8px 12px;border-radius:6px;cursor:pointer;font-weight:700;font-size:.85rem;transition:background-color .2s}.btn.add{background-color:#007bff;color:#fff}.btn.add:hover{background-color:#0056b3}.btn.accept{background-color:#28a745;color:#fff}.btn.accept:hover{background-color:#218838}.btn.reject{background-color:#e4e6eb;color:#050505}.btn.reject:hover{background-color:#dcdde1}@media (max-width: 900px){.card-container{grid-template-columns:1fr}}.rbc-btn{color:inherit;font:inherit;margin:0}button.rbc-btn{overflow:visible;text-transform:none;-webkit-appearance:button;-moz-appearance:button;appearance:button;cursor:pointer}button[disabled].rbc-btn{cursor:not-allowed}button.rbc-input::-moz-focus-inner{border:0;padding:0}.rbc-calendar{-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch}.rbc-m-b-negative-3{margin-bottom:-3px}.rbc-h-full{height:100%}.rbc-calendar *,.rbc-calendar *:before,.rbc-calendar *:after{-webkit-box-sizing:inherit;box-sizing:inherit}.rbc-abs-full,.rbc-row-bg{overflow:hidden;position:absolute;inset:0}.rbc-ellipsis,.rbc-show-more,.rbc-row-segment .rbc-event-content,.rbc-event-label{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rbc-rtl{direction:rtl}.rbc-off-range{color:#999}.rbc-off-range-bg{background:#e6e6e6}.rbc-header{overflow:hidden;-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;text-overflow:ellipsis;white-space:nowrap;padding:0 3px;text-align:center;vertical-align:middle;font-weight:700;font-size:90%;min-height:0;border-bottom:1px solid #ddd}.rbc-header+.rbc-header{border-left:1px solid #ddd}.rbc-rtl .rbc-header+.rbc-header{border-left-width:0;border-right:1px solid #ddd}.rbc-header>a,.rbc-header>a:active,.rbc-header>a:visited{color:inherit;text-decoration:none}.rbc-button-link{color:inherit;background:none;margin:0;padding:0;border:none;cursor:pointer;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.rbc-row-content{position:relative;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none;z-index:4}.rbc-row-content-scrollable{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;height:100%}.rbc-row-content-scrollable .rbc-row-content-scroll-container{height:100%;overflow-y:scroll;-ms-overflow-style:none;scrollbar-width:none}.rbc-row-content-scrollable .rbc-row-content-scroll-container::-webkit-scrollbar{display:none}.rbc-today{background-color:#eaf6ff}.rbc-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:10px;font-size:16px}.rbc-toolbar .rbc-toolbar-label{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;padding:0 10px;text-align:center}.rbc-toolbar button{color:#373a3c;display:inline-block;margin:0;text-align:center;vertical-align:middle;background:none;background-image:none;border:1px solid #ccc;padding:.375rem 1rem;border-radius:4px;line-height:normal;white-space:nowrap}.rbc-toolbar button:active,.rbc-toolbar button.rbc-active{background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px #00000020;background-color:#e6e6e6;border-color:#adadad}.rbc-toolbar button:active:hover,.rbc-toolbar button:active:focus,.rbc-toolbar button.rbc-active:hover,.rbc-toolbar button.rbc-active:focus{color:#373a3c;background-color:#d4d4d4;border-color:#8c8c8c}.rbc-toolbar button:focus{color:#373a3c;background-color:#e6e6e6;border-color:#adadad}.rbc-toolbar button:hover{color:#373a3c;cursor:pointer;background-color:#e6e6e6;border-color:#adadad}.rbc-btn-group{display:inline-block;white-space:nowrap}.rbc-btn-group>button:first-child:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.rbc-btn-group>button:last-child:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.rbc-rtl .rbc-btn-group>button:first-child:not(:last-child){border-radius:0 4px 4px 0}.rbc-rtl .rbc-btn-group>button:last-child:not(:first-child){border-radius:4px 0 0 4px}.rbc-btn-group>button:not(:first-child):not(:last-child){border-radius:0}.rbc-btn-group button+button{margin-left:-1px}.rbc-rtl .rbc-btn-group button+button{margin-left:0;margin-right:-1px}.rbc-btn-group+.rbc-btn-group,.rbc-btn-group+button{margin-left:10px}@media (max-width: 767px){.rbc-toolbar{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.rbc-event,.rbc-day-slot .rbc-background-event{border:none;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-shadow:none;box-shadow:none;margin:0;padding:2px 5px;background-color:#3174ad;border-radius:5px;color:#fff;cursor:pointer;width:100%;text-align:left}.rbc-slot-selecting .rbc-event,.rbc-slot-selecting .rbc-day-slot .rbc-background-event,.rbc-day-slot .rbc-slot-selecting .rbc-background-event{cursor:inherit;pointer-events:none}.rbc-event.rbc-selected,.rbc-day-slot .rbc-selected.rbc-background-event{background-color:#265985}.rbc-event:focus,.rbc-day-slot .rbc-background-event:focus{outline:5px auto #3b99fc}.rbc-event-label{font-size:80%}.rbc-event-overlaps{-webkit-box-shadow:-1px 1px 5px 0px rgba(51,51,51,.5);box-shadow:-1px 1px 5px #33333380}.rbc-event-continues-prior{border-top-left-radius:0;border-bottom-left-radius:0}.rbc-event-continues-after{border-top-right-radius:0;border-bottom-right-radius:0}.rbc-event-continues-earlier{border-top-left-radius:0;border-top-right-radius:0}.rbc-event-continues-later{border-bottom-left-radius:0;border-bottom-right-radius:0}.rbc-row{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.rbc-row-segment{padding:0 1px 1px}.rbc-selected-cell{background-color:#0000001a}.rbc-show-more{background-color:#ffffff4d;z-index:4;font-weight:700;font-size:85%;height:auto;line-height:normal;color:#3174ad}.rbc-show-more:hover,.rbc-show-more:focus{color:#265985}.rbc-month-view{position:relative;border:1px solid #ddd;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;width:100%;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none;height:100%}.rbc-month-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.rbc-month-row{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;-ms-flex-preferred-size:0px;flex-basis:0px;overflow:hidden;height:100%}.rbc-month-row+.rbc-month-row{border-top:1px solid #ddd}.rbc-date-cell{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0;min-width:0;padding-right:5px;text-align:right}.rbc-date-cell.rbc-now{font-weight:700}.rbc-date-cell>a,.rbc-date-cell>a:active,.rbc-date-cell>a:visited{color:inherit;text-decoration:none}.rbc-row-bg{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;overflow:hidden;right:1px}.rbc-day-bg{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.rbc-day-bg+.rbc-day-bg{border-left:1px solid #ddd}.rbc-rtl .rbc-day-bg+.rbc-day-bg{border-left-width:0;border-right:1px solid #ddd}.rbc-overlay{position:absolute;z-index:5;border:1px solid #e5e5e5;background-color:#fff;-webkit-box-shadow:0 5px 15px rgba(0,0,0,.25);box-shadow:0 5px 15px #00000040;padding:10px}.rbc-overlay>*+*{margin-top:1px}.rbc-overlay-header{border-bottom:1px solid #e5e5e5;margin:-10px -10px 5px;padding:2px 10px}.rbc-agenda-view{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;overflow:auto}.rbc-agenda-view table.rbc-agenda-table{width:100%;border:1px solid #ddd;border-spacing:0;border-collapse:collapse}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td{padding:5px 10px;vertical-align:top}.rbc-agenda-view table.rbc-agenda-table .rbc-agenda-time-cell{padding-left:15px;padding-right:15px;text-transform:lowercase}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left-width:0;border-right:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table tbody>tr+tr{border-top:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table thead>tr>th{padding:3px 5px;text-align:left;border-bottom:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table thead>tr>th{text-align:right}.rbc-agenda-time-cell{text-transform:lowercase}.rbc-agenda-time-cell .rbc-continues-after:after{content:" »"}.rbc-agenda-time-cell .rbc-continues-prior:before{content:"« "}.rbc-agenda-date-cell,.rbc-agenda-time-cell{white-space:nowrap}.rbc-agenda-event-cell{width:100%}.rbc-time-column{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-height:100%}.rbc-time-column .rbc-timeslot-group{-webkit-box-flex:1;-ms-flex:1;flex:1}.rbc-timeslot-group{border-bottom:1px solid #ddd;min-height:40px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column nowrap;flex-flow:column nowrap}.rbc-time-gutter,.rbc-header-gutter{-webkit-box-flex:0;-ms-flex:none;flex:none}.rbc-label{padding:0 5px}.rbc-day-slot{position:relative}.rbc-day-slot .rbc-events-container{inset:0;position:absolute;margin-right:10px}.rbc-day-slot .rbc-events-container.rbc-rtl{left:10px;right:0}.rbc-day-slot .rbc-event,.rbc-day-slot .rbc-background-event{border:1px solid #265985;display:-webkit-box;display:-ms-flexbox;display:flex;max-height:100%;min-height:20px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column wrap;flex-flow:column wrap;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;overflow:hidden;position:absolute}.rbc-day-slot .rbc-background-event{opacity:.75}.rbc-day-slot .rbc-event-label{-webkit-box-flex:0;-ms-flex:none;flex:none;padding-right:5px;width:auto}.rbc-day-slot .rbc-event-content{width:100%;-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0;word-wrap:break-word;line-height:1;height:100%;min-height:1em}.rbc-day-slot .rbc-time-slot{border-top:1px solid #f7f7f7}.rbc-time-view-resources .rbc-time-gutter,.rbc-time-view-resources .rbc-time-header-gutter{position:sticky;left:0;background-color:#fff;border-right:1px solid #ddd;z-index:10;margin-right:-1px}.rbc-time-view-resources .rbc-time-header{overflow:hidden}.rbc-time-view-resources .rbc-time-header-content{min-width:auto;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;-ms-flex-preferred-size:0px;flex-basis:0px}.rbc-time-view-resources .rbc-time-header-cell-single-day{display:none}.rbc-time-view-resources .rbc-day-slot{min-width:140px}.rbc-time-view-resources .rbc-header,.rbc-time-view-resources .rbc-day-bg{width:140px;-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0;-ms-flex-preferred-size:0 px;flex-basis:0 px}.rbc-time-header-content+.rbc-time-header-content{margin-left:-1px}.rbc-time-slot{-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0}.rbc-time-slot.rbc-now{font-weight:700}.rbc-day-header{text-align:center}.rbc-slot-selection{z-index:10;position:absolute;background-color:#00000080;color:#fff;font-size:75%;width:100%;padding:3px}.rbc-slot-selecting{cursor:move}.rbc-time-view{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-ms-flex:1;flex:1;width:100%;border:1px solid #ddd;min-height:0}.rbc-time-view .rbc-time-gutter{white-space:nowrap;text-align:right}.rbc-time-view .rbc-allday-cell{-webkit-box-sizing:content-box;box-sizing:content-box;width:100%;height:100%;position:relative}.rbc-time-view .rbc-allday-cell+.rbc-allday-cell{border-left:1px solid #ddd}.rbc-time-view .rbc-allday-events{position:relative;z-index:4}.rbc-time-view .rbc-row{-webkit-box-sizing:border-box;box-sizing:border-box;min-height:20px}.rbc-time-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.rbc-time-header.rbc-overflowing{border-right:1px solid #ddd}.rbc-rtl .rbc-time-header.rbc-overflowing{border-right-width:0;border-left:1px solid #ddd}.rbc-time-header>.rbc-row:first-child{border-bottom:1px solid #ddd}.rbc-time-header>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd}.rbc-time-header-cell-single-day{display:none}.rbc-time-header-content{-webkit-box-flex:1;-ms-flex:1;flex:1;display:-webkit-box;display:-ms-flexbox;display:flex;min-width:0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border-left:1px solid #ddd}.rbc-rtl .rbc-time-header-content{border-left-width:0;border-right:1px solid #ddd}.rbc-time-header-content>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd;-ms-flex-negative:0;flex-shrink:0}.rbc-time-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;width:100%;border-top:2px solid #ddd;overflow-y:auto;position:relative}.rbc-time-content>.rbc-time-gutter{-webkit-box-flex:0;-ms-flex:none;flex:none}.rbc-time-content>*+*>*{border-left:1px solid #ddd}.rbc-rtl .rbc-time-content>*+*>*{border-left-width:0;border-right:1px solid #ddd}.rbc-time-content>.rbc-day-slot{width:100%;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none}.rbc-current-time-indicator{position:absolute;z-index:3;left:0;right:0;height:1px;background-color:#74ad31;pointer-events:none}.rbc-resource-grouping.rbc-time-header-content{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.rbc-resource-grouping .rbc-row .rbc-header{width:141px}.calendar-container{padding:20px;font-family:sans-serif}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;padding:20px;border-radius:8px;width:90%;max-width:400px}.modal-content h3{margin-top:0}.modal-content input{width:100%;padding:10px;margin:10px 0;border-radius:5px;border:1px solid #ccc}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:15px}.modal-actions button{padding:8px 15px;border:none;border-radius:5px;cursor:pointer}.modal-actions button[type=submit]{background-color:#007bff;color:#fff}.verify-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f4f7f9;padding:20px;font-family:Inter,Segoe UI,Tahoma,sans-serif}.verify-card{background:#fff;padding:3rem 3.2rem;border-radius:16px;width:100%;max-width:450px;text-align:center;animation:fadeIn .35s ease-out}.verify-card h2{font-size:2rem;margin-bottom:1rem;color:#064b44}.verify-card p{font-size:.97rem;color:#666;margin-bottom:2rem}.verify-card input{width:100%;padding:.9rem 1rem;font-size:1.2rem;font-weight:600;letter-spacing:.35rem;text-align:center;border-radius:10px;border:2px solid #d1d9de;outline:none;transition:all .25s ease;background:#fafafa}.verify-card input:focus{border-color:#0a8a77;background:#fff;box-shadow:0 0 0 4px #0a8a7726}.verify-card button{margin-top:1.8rem;width:100%;padding:.95rem;font-size:1.05rem;font-weight:600;border-radius:10px;border:none;background:linear-gradient(135deg,#0a8a77,#064b44);color:#fff;cursor:pointer;transition:.25s ease}.verify-card button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000002e}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 480px){.verify-card{padding:2.3rem 1.8rem;border-radius:14px}.verify-card h2{font-size:1.7rem}.verify-card input{font-size:1.1rem;letter-spacing:.25rem}}.diet-container{min-height:50vh;display:flex;align-items:center;justify-content:center;padding:20px}.diet-card{background:#fff;width:100%;max-width:420px;padding:28px 24px;border-radius:14px;box-shadow:0 20px 35px #00000014;animation:fadeInUp .6s ease}.diet-card h2{font-size:1.6rem;text-align:center;color:#065f46;margin-bottom:22px;font-weight:600}.diet-card select{width:100%;padding:12px 14px;border-radius:10px;border:1px solid #d1fae5;background:#f0fdf4;font-size:.95rem;margin-bottom:20px;transition:border-color .3s,box-shadow .3s}.diet-card select:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b98140}.diet-card button{width:100%;padding:12px;border-radius:10px;border:none;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.diet-card button:hover{transform:translateY(-1px);box-shadow:0 10px 18px #10b98159}.diet-card button:disabled{background:#a7f3d0;cursor:not-allowed;box-shadow:none;transform:none}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 480px){.diet-card{padding:22px 18px}.diet-card h2{font-size:1.4rem}}.viewer-container{max-width:1100px;margin:0 auto;padding:30px 20px;background:#f3f5f9;font-family:Inter,sans-serif}.viewer-header{display:flex;align-items:center;gap:20px;margin-bottom:25px}.report-title{font-size:22px;font-weight:600;color:#1b2533}.report-type{font-size:14px;color:#6b7280}.back-btn{padding:8px 14px;border-radius:6px;background:#fff;border:1px solid #d0d7e2;cursor:pointer;font-size:14px}.back-btn:hover{background:#e7edf7}.section-card,.report-link-card{background:#fff;border-radius:14px;padding:22px;margin-bottom:24px;box-shadow:0 8px 22px #0000000f}.report-link-card p{margin-bottom:8px;font-weight:600;color:#374151}.report-link{display:inline-block;padding:10px 16px;border-radius:8px;color:#fff;text-decoration:none;font-weight:500}.values-table{width:100%;border-collapse:collapse;margin-top:12px}.values-table th,.values-table td{padding:10px 14px;text-align:left;font-size:14px}.values-table th{background:#f1f5f9;color:#374151;font-weight:600}.values-table tr:nth-child(2n){background:#f9fafb}.ai-text{font-size:1rem;font-family:Inter,sans-serif;text-align:justify;line-height:1.7;color:#2d3648;margin-top:10px;white-space:pre-line}.ai-warning{margin-top:18px;background:#fff7d4;padding:12px 14px;border-radius:10px;border:1px solid #ffe399;color:#8a6d1f;font-size:13px}.muted-text{color:#6b7280;font-size:14px}.ai-text{white-space:pre-line;font-size:16px;line-height:1.6}.calendar-container{background:#fff;border-radius:20px;padding:1.5rem;box-shadow:0 10px 30px #0000000d;font-family:Inter,sans-serif}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.calendar-header h3{margin:0;color:#2c3e50;font-size:1.1rem;font-weight:700}.calendar-nav-btn{background:none;border:none;cursor:pointer;font-size:1.2rem;color:#7f8c8d;padding:0 5px}.calendar-nav-btn:hover{color:#3498db}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}.calendar-day-label{font-size:.75rem;color:#95a5a6;font-weight:600;margin-bottom:.5rem}.calendar-day{font-size:.9rem;height:36px;width:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:#34495e;margin:0 auto;transition:all .2s ease}.calendar-day.empty{pointer-events:none}.calendar-day.completed{background-color:#2ecc71;color:#fff;font-weight:700;box-shadow:0 2px 5px #2ecc714d}.calendar-day.current-day:not(.completed){border:2px solid #3498db;color:#3498db;font-weight:700}.streak-info{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #f1f1f1;display:flex;align-items:center;justify-content:center;gap:10px}.streak-count{font-size:1.5rem;font-weight:800;color:#f39c12}.streak-label{color:#7f8c8d;font-size:.9rem}.challenges-container{padding:2rem;min-height:90vh;background:#f8fcfb;font-family:Inter,sans-serif}.challenges-header{text-align:center;margin-bottom:4rem;position:relative}.challenges-header h1{font-size:1.8rem;font-weight:800;color:#25725c;margin-bottom:1rem;letter-spacing:-1px}.challenges-header p{color:#666;font-size:1.2rem;max-width:600px;margin:0 auto}.challenges-loading{height:80vh;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#34495e}.spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.challenges-layout-grid{display:grid;grid-template-columns:1fr 340px;gap:2rem;max-width:1400px;margin:0 auto}.challenges-list{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.challenges-sidebar{display:flex;flex-direction:column;gap:2rem}.sidebar-promo{background:linear-gradient(135deg,#3498db,#2980b9);border-radius:20px;padding:2rem;color:#fff;text-align:center;box-shadow:0 10px 20px #3498db33}.sidebar-promo h4{font-size:1.2rem;margin-bottom:.5rem}.sidebar-promo p{font-size:.9rem;opacity:.9}.challenge-card{background:#fff;border-radius:20px;position:relative;box-shadow:0 10px 30px #0000000d;transition:all .3s cubic-bezier(.165,.84,.44,1);border:1px solid rgba(255,255,255,.5);overflow:hidden}.challenge-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #0000001a}.challenge-card.joined{border:2px solid #3498db;background:#fdfdfd}.challenge-card.completed{border:2px solid #2ecc71;background:#f9fffb;opacity:.9}.card-top-accent{height:6px;background:linear-gradient(90deg,#3498db,#2ecc71);width:100%}.card-content{padding:2rem;display:flex;flex-direction:column;height:100%}.card-header{display:flex;justify-content:space-between;margin-bottom:1.5rem}.badge{padding:6px 14px;border-radius:50px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.difficulty-easy{background:#e8f5e9;color:#2ecc71}.difficulty-medium{background:#fff8e1;color:#ffa000}.difficulty-hard{background:#ffebee;color:#e53935}.condition{background:#e3f2fd;color:#1976d2}.challenge-card h3{font-size:1.5rem;font-weight:700;color:#2c3e50;margin-bottom:.75rem;line-height:1.3}.challenge-card p{color:#7f8c8d;line-height:1.6;font-size:1rem;margin-bottom:1rem;flex-grow:1}.social-section:not(:empty){margin-bottom:1rem}.friend-completions{display:flex;align-items:center;background:#f0f7ff;padding:8px 12px;border-radius:12px;font-size:.85rem;color:#34495e}.friend-icon{margin-right:8px;font-size:1.1rem}.friend-text strong{color:#2980b9}.card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1.5rem;border-top:1px solid #f1f1f1;margin-top:auto}.points{font-weight:800;color:#f39c12;font-size:1.1rem}.action-buttons button{padding:10px 20px;border-radius:12px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;font-size:.95rem}.join-btn{background:#3498db;color:#fff;box-shadow:0 4px 15px #3498db4d}.join-btn:hover{background:#2980b9;transform:translateY(-2px);box-shadow:0 6px 20px #3498db66}.complete-btn{background:#2ecc71;color:#fff;box-shadow:0 4px 15px #2ecc714d}.complete-btn:hover{background:#27ae60;transform:translateY(-2px);box-shadow:0 6px 20px #2ecc7166}.completed-btn{background:transparent;color:#27ae60;border:2px solid #27ae60!important;cursor:default}.no-challenges{grid-column:1 / -1;text-align:center;padding:5rem 2rem;background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000000d}.no-challenges h2{color:#2c3e50;margin-bottom:1rem}@media (max-width: 1200px){.challenges-list{grid-template-columns:1fr}}@media (max-width: 1024px){.challenges-layout-grid{grid-template-columns:1fr}.challenges-list{grid-template-columns:1fr 1fr}.challenges-sidebar{order:-1;max-width:600px;margin:0 auto;width:100%}}@media (max-width: 768px){.challenges-list{grid-template-columns:1fr}.challenges-header h1{font-size:2rem}}.weekly-container{max-width:1100px;margin:auto;padding:20px}.today-wrapper{text-align:center;margin-bottom:20px}.tab-button{background:#e0f7f1;border:none;padding:10px 18px;margin:0 6px;border-radius:20px;cursor:pointer;font-weight:600;color:#0b7b62}.tab-button.active{background:#0b7b62;color:#fff}.today-card{background:#f0fff7;border-radius:15px;padding:20px;margin-bottom:30px;box-shadow:0 6px 20px #0000000f}.today-meal-row{display:flex;justify-content:space-between;margin:8px 0}.cook-icon{margin-left:10px;cursor:pointer;font-size:1.3rem;background:none;border:none}.weekly-title{text-align:center;font-size:2rem;margin-bottom:25px;color:#0b7b62}.week-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.day-box{padding:20px;background:#f1faf7;border-radius:14px;box-shadow:0 6px 20px #0000000d}.day-box h3{margin-bottom:10px;color:#0b7b62}.modal-overlay{position:fixed;inset:0;background:#00000073;display:flex;justify-content:center;align-items:center}.modal-box{background:#fff;padding:25px;border-radius:12px;max-width:550px;width:90%}.close-btn{background:#0b7b62;color:#fff;padding:8px 16px;margin-top:20px;border-radius:6px;border:none;cursor:pointer}.week-meal-row{display:flex;justify-content:space-between;align-items:center;margin:6px 0}.week-meal-row span{flex:1;line-height:1.4}.cook-icon{margin-left:10px;cursor:pointer;font-size:1.4rem;background:none;border:none;color:#0b7b62}.meal-row{display:flex;align-items:center;gap:10px;margin:10px 0}.meal-label{font-weight:600;text-transform:capitalize;white-space:nowrap}.meal-name{flex:1;line-height:1.4}.cook-icon{margin-left:auto;background:none;border:none;cursor:pointer;font-size:1.4rem;color:#0b7b62;display:flex;align-items:center}.cook-icon:hover{transform:scale(1.15)}.grocery-card{background:#f0fff7;padding:20px;border-radius:14px;margin-top:20px;box-shadow:0 6px 20px #0000000f}.grocery-list{list-style:none;padding:0;margin:0}.grocery-list li{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #d6f5e9}.grocery-item{font-weight:500;text-transform:capitalize}.grocery-count{background:#0b7b62;color:#fff;border-radius:12px;padding:2px 10px;font-size:.9rem}
