@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap);*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body,html{overflow-x:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f7f9fc;background:var(--bg-light);color:#1a202c;color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;min-height:100vh;width:100%}img,svg,video{height:auto;max-width:100%}button,input,select,textarea{font-family:inherit;font-size:inherit}#root,.app,.main-content{max-width:100vw;overflow-x:hidden}:root{--bg-white:#fff;--bg-light:#f7f9fc;--bg-subtle:#f0f4f8;--border:#e2e8f0;--border-light:#edf2f7;--text:#1a202c;--text-secondary:#64748b;--text-muted:#94a3b8;--primary:#0061ff;--primary-hover:#0052d9;--primary-light:#e6f0ff;--primary-soft:#dbeafe;--accent:#00d4ff;--success:#10b981;--warning:#f59e0b;--error:#ef4444;--gradient:linear-gradient(135deg,#0061ff,#00d4ff);--shadow-sm:0 1px 2px #0000000d;--shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--shadow-blue:0 4px 14px #0061ff40;--radius:12px;--radius-sm:8px;--radius-lg:16px}.app{display:flex;min-height:100vh}.sidebar-wrapper{flex-shrink:0;height:100vh;left:0;position:fixed;top:0;width:260px;z-index:1000}.main-content{background:#fff;background:var(--bg-white);display:flex;flex:1 1;flex-direction:column;margin-left:260px;min-height:100vh}.mobile-header,.sidebar-overlay{display:none}.sidebar{background:#fff;background:var(--bg-white);border-right:1px solid #e2e8f0;border-right:1px solid var(--border);display:flex;flex-direction:column;height:100vh;padding:20px 12px;width:260px}.sidebar-header{border-bottom:1px solid #edf2f7;border-bottom:1px solid var(--border-light);margin-bottom:20px;padding:8px 12px 20px}.logo{gap:10px;margin-bottom:4px}.logo,.logo-icon{align-items:center;display:flex}.logo-icon{background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border-radius:10px;font-size:20px;height:36px;justify-content:center;width:36px}.logo-icon-img{border-radius:10px;height:40px;object-fit:contain;width:40px}.mobile-logo-icon{height:32px;object-fit:contain;width:32px}.logo-text{color:#1a202c;color:var(--text);font-size:20px;font-weight:700}.logo-badge{background:#f0f4f8;background:var(--bg-subtle);border-radius:20px;color:#94a3b8;color:var(--text-muted);display:inline-block;font-size:11px;margin-left:46px;padding:3px 10px}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:4px}.nav-item{align-items:center;background:#0000;border:none;border-radius:8px;border-radius:var(--radius-sm);color:#64748b;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;padding:12px 14px;text-align:left;transition:all .15s ease;width:100%}.nav-item:hover{background:#f0f4f8;background:var(--bg-subtle);color:#1a202c;color:var(--text)}.nav-item.active{background:#e6f0ff;background:var(--primary-light);color:#0061ff;color:var(--primary)}.sidebar-footer{border-top:1px solid #edf2f7;border-top:1px solid var(--border-light);margin-top:auto;padding-top:20px}.user-card{background:#f0f4f8;background:var(--bg-subtle);border-radius:8px;border-radius:var(--radius-sm);gap:10px;padding:10px 12px}.user-avatar,.user-card{align-items:center;display:flex}.user-avatar{background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border-radius:50%;color:#fff;font-size:14px;font-weight:600;height:36px;justify-content:center;width:36px}.user-info{flex:1 1;min-width:0}.user-name{color:#1a202c;color:var(--text);display:block;font-size:13px;font-weight:600}.user-email{color:#94a3b8;color:var(--text-muted);display:block;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-badge{background:#0061ff;background:var(--primary);border-radius:10px;color:#fff;font-size:10px;font-weight:600;padding:2px 8px}.user-badge.trial{background:#f59e0b;background:var(--warning)}.user-badge.free{background:#94a3b8;background:var(--text-muted)}.logout-btn{background:#0000;border:none;border-radius:6px;color:#94a3b8;color:var(--text-muted);cursor:pointer;padding:8px;transition:all .15s}.logout-btn:hover{background:#ef44441a;color:#ef4444;color:var(--error)}.login-cta{align-items:center;background:#0061ff;background:var(--primary);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px;transition:all .15s;width:100%}.login-cta:hover{background:#0052d9;background:var(--primary-hover);box-shadow:0 4px 14px #0061ff40;box-shadow:var(--shadow-blue)}.upgrade-banner{margin-bottom:12px;padding:12px}.upgrade-sidebar-btn{align-items:center;background:linear-gradient(135deg,#f59e0b,#f97316);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px;transition:all .15s;width:100%}.upgrade-sidebar-btn:hover{box-shadow:0 4px 12px #f9731666;transform:translateY(-2px)}.chat-page{margin:0 auto;max-width:800px;padding:24px 24px 100px;width:100%}.chat-page,.chat-welcome{display:flex;flex:1 1;flex-direction:column}.chat-welcome{justify-content:center;padding:40px 20px}.welcome-hero{margin-bottom:40px;text-align:center}.welcome-emoji{font-size:64px;margin-bottom:20px}.welcome-hero h1{color:#1a202c;color:var(--text);font-size:32px;font-weight:700;margin-bottom:12px}.welcome-hero h1 span{color:#0061ff;color:var(--primary)}.welcome-subtitle{color:#64748b;color:var(--text-secondary);font-size:16px;margin:0 auto;max-width:450px}.quick-actions-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:32px}.quick-action-card{align-items:center;background:#fff;background:var(--bg-white);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);cursor:pointer;display:flex;gap:12px;padding:16px 20px;text-align:left;transition:all .2s}.quick-action-card:hover{border-color:#0061ff;border-color:var(--primary);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow);transform:translateY(-2px)}.quick-icon{font-size:28px}.quick-label{color:#1a202c;color:var(--text);font-size:14px;font-weight:500}.motivation-banner{background:#e6f0ff;background:var(--primary-light);border:1px solid #0061ff33;border-radius:12px;border-radius:var(--radius);margin-bottom:20px;padding:16px 20px}.motivation-banner svg{color:#0061ff;color:var(--primary);flex-shrink:0}.motivation-banner p{color:#64748b;color:var(--text-secondary);font-size:14px}.motivation-banner strong{color:#1a202c;color:var(--text)}.trial-notice{align-items:center;background:#f0f4f8;background:var(--bg-subtle);border-radius:8px;border-radius:var(--radius-sm);color:#64748b;color:var(--text-secondary);display:flex;font-size:13px;gap:10px;justify-content:center;padding:12px 16px}.trial-badge{background:#0061ff;background:var(--primary);border-radius:20px;color:#fff;font-size:11px;font-weight:600;padding:4px 10px}.chat-active{display:flex;flex:1 1;flex-direction:column}.chat-header-bar{align-items:center;border-bottom:1px solid #edf2f7;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;margin-bottom:16px;padding:12px 0}.chat-header-bar h3{color:#1a202c;color:var(--text);font-size:16px;font-weight:600}.clear-btn{align-items:center;background:#f0f4f8;background:var(--bg-subtle);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);color:#64748b;color:var(--text-secondary);cursor:pointer;display:flex;font-size:13px;gap:6px;padding:8px 14px;transition:all .15s}.clear-btn:hover{background:#ef44440d;border-color:#ef4444;border-color:var(--error);color:#ef4444;color:var(--error)}.messages-list{flex:1 1;overflow-y:auto;padding-bottom:24px;padding-top:16px}.message{animation:fadeIn .3s ease-out;display:flex;gap:12px;margin-bottom:20px}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.message.user{flex-direction:row-reverse}.message-avatar{align-items:center;background:#f0f4f8;background:var(--bg-subtle);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:50%;display:flex;flex-shrink:0;font-size:16px;height:36px;justify-content:center;width:36px}.bot-avatar{border-radius:50%;height:100%;object-fit:cover;width:100%}.message.user .message-avatar{background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border:none;color:#fff;font-size:13px;font-weight:600}.message-bubble{word-wrap:break-word;background:#f0f4f8;background:var(--bg-subtle);border:1px solid #edf2f7;border:1px solid var(--border-light);border-radius:18px;font-size:15px;line-height:1.6;max-width:75%;min-width:80px;padding:14px 18px;white-space:pre-wrap}.message.user .message-bubble{background:linear-gradient(135deg,#0061ff,#0052d9);border:none;border-radius:18px 18px 4px 18px;box-shadow:0 2px 8px #0061ff40;color:#fff;text-align:left}.message.assistant .message-bubble{border-radius:18px 18px 18px 4px}.msg-heading{color:#0061ff;color:var(--primary);font-size:15px;font-weight:600;margin:14px 0 8px}.message.user .msg-heading{color:#fff}.msg-title{font-size:14px;font-weight:600;margin:10px 0 6px}.msg-para{line-height:1.6}.msg-list-item,.msg-para{font-size:14px;margin:6px 0}.msg-list-item{line-height:1.5;padding-left:8px}.message-bubble.typing{display:flex;gap:5px;padding:18px 22px}.message-bubble.typing span{animation:typing 1.4s infinite;background:#94a3b8;background:var(--text-muted);border-radius:50%;height:8px;width:8px}.message-bubble.typing span:nth-child(2){animation-delay:.2s}.message-bubble.typing span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-6px)}}.chat-input-area{background:linear-gradient(0deg,#fff 85%,#0000);background:linear-gradient(to top,var(--bg-white) 85%,#0000);bottom:0;left:260px;padding:16px 24px 24px;position:fixed;right:0}.input-form{display:flex;gap:10px;margin:0 auto;max-width:800px}.chat-input{background:#fff;background:var(--bg-white);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:50px;box-shadow:0 1px 2px #0000000d;box-shadow:var(--shadow-sm);color:#1a202c;color:var(--text);flex:1 1;font-family:inherit;font-size:14px;padding:14px 20px;transition:all .15s}.chat-input:focus{border-color:#0061ff;border-color:var(--primary);box-shadow:0 0 0 3px #e6f0ff;box-shadow:0 0 0 3px var(--primary-light);outline:none}.chat-input::placeholder{color:#94a3b8;color:var(--text-muted)}.send-button{align-items:center;background:#0061ff;background:var(--primary);border:none;border-radius:50%;box-shadow:0 4px 14px #0061ff40;box-shadow:var(--shadow-blue);color:#fff;cursor:pointer;display:flex;height:48px;justify-content:center;transition:all .15s;width:48px}.send-button:hover:not(:disabled){background:#0052d9;background:var(--primary-hover);transform:scale(1.05)}.send-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.5}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.chat-input.blocked{background:#f0f4f8;background:var(--bg-subtle);cursor:not-allowed}.blocked-banner{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fbbf24;border-radius:12px;border-radius:var(--radius);color:#92400e;display:flex;font-size:14px;gap:12px;margin-bottom:16px;padding:14px 20px}.blocked-banner svg{flex-shrink:0}.blocked-banner span{flex:1 1}.blocked-banner button{background:#0061ff;background:var(--primary);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;white-space:nowrap}.blocked-banner button:hover{background:#0052d9;background:var(--primary-hover)}.quick-action-card:disabled{cursor:not-allowed;opacity:.5}.quick-action-card:disabled:hover{border-color:#e2e8f0;border-color:var(--border);box-shadow:none;transform:none}.modal-overlay{background:#0006}.auth-modal{animation:slideUp .3s ease-out;background:#fff;background:var(--bg-white);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;box-shadow:var(--shadow-lg);max-width:420px;padding:32px;position:relative;width:100%}.modal-close{align-items:center;background:#f0f4f8;background:var(--bg-subtle);border:none;border-radius:50%;color:#94a3b8;color:var(--text-muted);cursor:pointer;display:flex;height:32px;justify-content:center;position:absolute;right:16px;top:16px;width:32px}.modal-close:hover{background:#ef44441a;color:#ef4444;color:var(--error)}.modal-header{margin-bottom:28px;text-align:center}.modal-emoji{font-size:48px;margin-bottom:16px}.modal-header h2{color:#1a202c;color:var(--text);font-size:22px;font-weight:700;margin-bottom:8px}.modal-subtitle{color:#64748b;color:var(--text-secondary);font-size:14px}.auth-form{display:flex;flex-direction:column;gap:14px}.input-group{position:relative}.input-icon{color:#94a3b8;color:var(--text-muted);left:14px;position:absolute;top:50%;transform:translateY(-50%)}.auth-form input{background:#fff;background:var(--bg-white);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);color:#1a202c;color:var(--text);font-family:inherit;font-size:14px;padding:12px 14px 12px 44px;width:100%}.auth-form input:focus{border-color:#0061ff;border-color:var(--primary);box-shadow:0 0 0 3px #e6f0ff;box-shadow:0 0 0 3px var(--primary-light);outline:none}.goals-grid{grid-template-columns:repeat(2,1fr)}.goal-card{align-items:center;background:#fff;background:var(--bg-white);border:2px solid #e2e8f0;border:2px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;display:flex;flex-direction:column;gap:6px;padding:16px 10px;transition:all .15s}.goal-card.selected,.goal-card:hover{border-color:#0061ff;border-color:var(--primary)}.goal-card.selected{background:#e6f0ff;background:var(--primary-light)}.goal-emoji{font-size:28px}.goal-label{color:#1a202c;color:var(--text);font-size:13px;font-weight:600}.goal-desc{color:#94a3b8;color:var(--text-muted);font-size:11px;text-align:center}.auth-error{background:#ef444414;border:1px solid #ef444433;border-radius:8px;border-radius:var(--radius-sm);color:#ef4444;color:var(--error);font-size:13px;padding:10px 14px;text-align:center}.auth-submit{align-items:center;background:#0061ff;background:var(--primary);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;justify-content:center;margin-top:6px;padding:14px}.auth-submit:hover:not(:disabled){background:#0052d9;background:var(--primary-hover);box-shadow:0 4px 14px #0061ff40;box-shadow:var(--shadow-blue)}.auth-submit:disabled{cursor:not-allowed;opacity:.6}.auth-switch{border-top:1px solid #edf2f7;border-top:1px solid var(--border-light);margin-top:20px;padding-top:20px;text-align:center}.auth-switch p{color:#64748b;color:var(--text-secondary);font-size:13px}.auth-switch button{background:none;border:none;color:#0061ff;color:var(--primary);cursor:pointer;font-weight:600}.auth-success{padding:20px;text-align:center}.auth-success svg{color:#10b981;margin-bottom:16px}.auth-success p{color:#1a202c;color:var(--text);font-size:15px;margin-bottom:20px}.auth-options{align-items:center;display:flex;gap:12px;justify-content:center;margin-top:16px}.auth-options button{background:none;border:none;color:#64748b;color:var(--text-secondary);cursor:pointer;font-size:13px;transition:color .2s}.auth-options button:hover{color:#0061ff;color:var(--primary)}.auth-options span{color:#94a3b8;color:var(--text-muted)}.auth-back{align-items:center;background:none;border:none;color:#64748b;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;gap:6px;justify-content:center;margin-top:12px;padding:12px;transition:color .2s;width:100%}.auth-back:hover{color:#0061ff;color:var(--primary)}.auth-benefits{align-items:center;color:#94a3b8;color:var(--text-muted);display:flex;font-size:12px;gap:8px;justify-content:center;margin-top:16px}.auth-benefits svg{color:#0061ff;color:var(--primary)}.upgrade-modal{animation:slideUp .3s ease-out;background:#fff;background:var(--bg-white);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;box-shadow:var(--shadow-lg);max-width:400px;overflow:hidden;width:100%}.upgrade-header{background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);color:#fff;padding:20px 16px;position:relative;text-align:center}.upgrade-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:28px;justify-content:center;position:absolute;right:10px;top:10px;width:28px}.upgrade-header h2{font-size:20px;font-weight:700;margin-bottom:4px}.upgrade-header p{font-size:12px;opacity:.9}.upgrade-content{padding:16px}.trial-banner{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fbbf24;border-radius:12px;border-radius:var(--radius);margin-bottom:12px;padding:10px;text-align:center}.trial-banner .trial-icon{font-size:24px;margin-bottom:4px}.trial-banner h3{color:#92400e;font-size:14px;font-weight:600;margin-bottom:2px}.trial-banner p{color:#a16207;font-size:11px}.benefits-list{margin-bottom:12px}.benefits-list h4{color:#1a202c;color:var(--text);font-size:12px;font-weight:600;margin-bottom:8px}.benefit-item{color:#64748b;color:var(--text-secondary);font-size:12px;gap:8px;padding:3px 0}.benefit-item svg{color:var(--success);height:14px;width:14px}.pricing-cards{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,1fr);margin-bottom:12px}.pricing-card{border:2px solid #e2e8f0;border:2px solid var(--border);border-radius:12px;border-radius:var(--radius);cursor:pointer;padding:12px 8px;position:relative;text-align:center;transition:all .15s}.pricing-card.selected,.pricing-card:hover{border-color:#0061ff;border-color:var(--primary)}.pricing-card.selected{background:#e6f0ff;background:var(--primary-light)}.pricing-card.popular:before{background:#10b981;background:var(--success);border-radius:20px;color:#fff;content:"Économise 49%";font-size:8px;font-weight:600;left:50%;padding:2px 6px;position:absolute;top:-8px;transform:translateX(-50%);white-space:nowrap}.pricing-period{color:#94a3b8;color:var(--text-muted);font-size:10px;margin-bottom:2px}.pricing-amount{color:#1a202c;color:var(--text);font-size:20px;font-weight:700}.pricing-amount span{color:#94a3b8;color:var(--text-muted);font-size:11px;font-weight:400}.pricing-yearly-note{color:#94a3b8;color:var(--text-muted);font-size:9px;margin-top:2px}.upgrade-cta{background:#0061ff;background:var(--primary);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:13px;font-weight:600;margin-bottom:8px;padding:12px;width:100%}.upgrade-cta:hover{background:#0052d9;background:var(--primary-hover);box-shadow:0 4px 14px #0061ff40;box-shadow:var(--shadow-blue)}.upgrade-skip{background:#0000;border:none;cursor:pointer;font-size:12px;padding:8px;width:100%}.upgrade-footer,.upgrade-skip{color:#94a3b8;color:var(--text-muted)}.upgrade-footer{font-size:10px;padding-top:8px;text-align:center}.profile-page,.recipes-page,.tips-page{background:#f7f9fc;background:var(--bg-light);flex:1 1;overflow-y:auto;padding:24px}.page-header h1{color:#1a202c;color:var(--text);font-size:24px;font-weight:700;margin-bottom:6px}.page-header p{color:var(--text-secondary);font-size:14px}.category-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.category-tab{background:#fff;background:var(--bg-white);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:50px;color:#64748b;color:var(--text-secondary);cursor:pointer;font-size:13px;font-weight:500;padding:8px 16px}.category-tab:hover{color:#1a202c;color:var(--text)}.category-tab.active,.category-tab:hover{border-color:#0061ff;border-color:var(--primary)}.category-tab.active{background:#0061ff;background:var(--primary);color:#fff}.recipes-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.recipe-card{background:#fff;background:var(--bg-white);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);padding:20px;transition:all .2s}.recipe-card:hover{border-color:#0061ff;border-color:var(--primary);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow);transform:translateY(-2px)}.recipe-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.recipe-emoji{font-size:40px}.favorite-btn{align-items:center;background:#f0f4f8;background:var(--bg-subtle);border:none;border-radius:50%;color:#94a3b8;color:var(--text-muted);cursor:pointer;display:flex;height:32px;justify-content:center;width:32px}.favorite-btn.active,.favorite-btn:hover{background:#ef44441a;color:#ef4444;color:var(--error)}.recipe-name{color:#1a202c;color:var(--text);font-size:16px;font-weight:600;margin-bottom:6px}.recipe-desc{color:#64748b;color:var(--text-secondary);font-size:13px;margin-bottom:10px}.recipe-vibe{background:#e6f0ff;background:var(--primary-light);border-radius:6px;color:#0061ff;color:var(--primary);display:inline-block;font-size:12px;margin-bottom:12px;padding:6px 10px}.recipe-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.recipe-tag{background:#f0f4f8;background:var(--bg-subtle);border-radius:20px;color:#64748b;color:var(--text-secondary);font-size:11px;padding:4px 10px}.recipe-meta{border-top:1px solid #edf2f7;border-top:1px solid var(--border-light);color:#94a3b8;color:var(--text-muted);display:flex;font-size:12px;gap:14px;padding-top:12px}.recipe-meta span{align-items:center;display:flex;gap:4px}.recipe-ingredients{align-items:center;color:#94a3b8;color:var(--text-muted);display:flex;font-size:12px;gap:6px;margin-top:10px}.goal-filter-btn{align-items:center;background:#fff;background:var(--bg-white);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:20px;color:#64748b;color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:13px;gap:6px;margin-top:12px;padding:8px 16px;transition:all .15s}.goal-filter-btn.active{background:#0061ff;background:var(--primary);color:#fff}.goal-filter-btn.active,.goal-filter-btn:hover{border-color:#0061ff;border-color:var(--primary)}.category-tab.has-items{position:relative}.favorites-count{background:#0061ff;background:var(--primary);border-radius:50%;color:#fff;display:inline-flex;font-size:11px;font-weight:600;height:18px;margin-left:6px;width:18px}.empty-favorites,.favorites-count{align-items:center;justify-content:center}.empty-favorites{color:#94a3b8;color:var(--text-muted);display:flex;flex-direction:column;padding:60px 20px;text-align:center}.empty-favorites svg{margin-bottom:16px;opacity:.3}.empty-favorites h3{color:#64748b;color:var(--text-secondary);margin-bottom:8px}.recipe-card.recommended{background:linear-gradient(135deg,#e6f0ff,#fff);background:linear-gradient(135deg,var(--primary-light),#fff);border:2px solid #0061ff;border:2px solid var(--primary)}.recommended-badge{background:#0061ff;background:var(--primary);border-radius:12px;color:#fff;font-size:11px;font-weight:600;left:50%;padding:4px 12px;position:absolute;top:-10px;transform:translateX(-50%);white-space:nowrap}.modal-favorite-btn{align-items:center;background:#fff3;border:1px solid #ffffff4d;border-radius:25px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;gap:8px;margin-top:16px;padding:10px 20px;transition:all .15s}.modal-favorite-btn:hover{background:#ffffff4d}.modal-favorite-btn.active{background:#ef4444;border-color:#ef4444}.recipe-card,.recipe-modal{position:relative}.recipe-modal{animation:slideUp .3s ease-out;background:#fff;background:var(--bg-white);border-radius:16px;border-radius:var(--radius-lg);max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.recipe-modal-header{background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);color:#fff;padding:32px;text-align:center}.recipe-modal-emoji{display:block;font-size:64px;margin-bottom:16px}.recipe-modal-header h2{font-size:24px;font-weight:700;margin-bottom:8px}.recipe-modal-header p{font-size:14px;margin-bottom:12px;opacity:.9}.recipe-modal-vibe{background:#fff3;border-radius:20px;display:inline-block;font-size:13px;padding:6px 14px}.recipe-modal-meta{background:#f0f4f8;background:var(--bg-subtle);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);display:flex;gap:24px;justify-content:center;padding:20px}.meta-item{align-items:center;color:#64748b;color:var(--text-secondary);display:flex;font-size:14px;gap:6px}.meta-item svg{color:#0061ff;color:var(--primary)}.recipe-modal-content{padding:24px}.recipe-section{margin-bottom:24px}.recipe-section h3{align-items:center;color:#1a202c;color:var(--text);display:flex;font-size:16px;font-weight:600;gap:8px;margin-bottom:14px}.recipe-section h3 svg{color:#0061ff;color:var(--primary)}.ingredients-list{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr;list-style:none}.ingredients-list li{background:#f0f4f8;background:var(--bg-subtle);border-radius:8px;border-radius:var(--radius-sm);color:#64748b;color:var(--text-secondary);font-size:13px;padding:8px 12px}.ingredients-list li:before{color:#0061ff;color:var(--primary);content:"•";margin-right:8px}.steps-list{counter-reset:steps;list-style:none}.steps-list li{background:#f0f4f8;background:var(--bg-subtle);border-radius:8px;border-radius:var(--radius-sm);color:#64748b;color:var(--text-secondary);counter-increment:steps;font-size:14px;line-height:1.5;margin-bottom:12px;padding:12px 12px 12px 48px;position:relative}.steps-list li:before{align-items:center;background:#0061ff;background:var(--primary);border-radius:50%;color:#fff;content:counter(steps);display:flex;font-size:12px;font-weight:600;height:24px;justify-content:center;left:12px;position:absolute;top:12px;width:24px}.recipe-modal-tags{display:flex;gap:8px;justify-content:center;padding:16px 24px 24px}.recipe-card{cursor:pointer}.subscription-page{margin:0 auto;max-width:800px;padding:24px}.subscription-content{display:flex;flex-direction:column;gap:24px}.plan-card{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:16px;border-radius:var(--radius-lg);overflow:hidden}.plan-card.current{border:2px solid #0061ff;border:2px solid var(--primary)}.plan-header{background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);color:#fff;gap:16px;padding:24px}.plan-header,.plan-icon{align-items:center;display:flex}.plan-icon{background:#fff3;border-radius:50%;height:60px;justify-content:center;width:60px}.plan-info h2{font-size:24px;font-weight:700;margin-bottom:4px}.status-badge{border-radius:20px;display:inline-block;font-size:12px;font-weight:600;padding:4px 12px}.status-badge.pro{background:#10b981;color:#fff}.status-badge.trial{background:#f59e0b;color:#fff}.status-badge.free{background:#ffffff4d;color:#fff}.status-badge.cancelled{background:#ef4444;color:#fff}.plan-card.cancelled{border-color:#ef4444}.plan-header.cancelled{background:linear-gradient(135deg,#ef4444,#dc2626)}.cancelled-warning{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;border-radius:var(--radius-sm);color:#dc2626;display:flex;font-size:14px;gap:10px;margin-top:16px;padding:12px 16px}.resubscribe-section{border-top:1px solid #e2e8f0;border-top:1px solid var(--border);padding:24px;text-align:center}.resubscribe-section h4{font-size:18px;margin-bottom:8px}.resubscribe-section p{color:#64748b;color:var(--text-secondary);margin-bottom:20px}.pro-actions{display:flex;flex-direction:column;gap:12px;padding:24px}.manage-btn{background:#0061ff;background:var(--primary);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:14px;width:100%}.manage-btn:hover{background:var(--primary-dark)}.plan-details{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);padding:24px}.detail-row{border-bottom:1px solid #edf2f7;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;padding:12px 0}.detail-row:last-child{border-bottom:none}.detail-row span{color:#64748b;color:var(--text-secondary)}.detail-row strong{color:#1a202c;color:var(--text)}.trial-warning{align-items:center;background:#fef3c7;border-radius:8px;border-radius:var(--radius-sm);color:#92400e;display:flex;font-size:14px;gap:10px;margin-top:16px;padding:12px 16px}.plan-features{padding:24px}.plan-features h4{color:#64748b;color:var(--text-secondary);font-size:14px;margin-bottom:12px}.plan-features ul{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr;list-style:none}.plan-features li{align-items:center;color:#1a202c;color:var(--text);display:flex;font-size:14px;gap:8px}.plan-features li svg{color:#10b981}.plan-features li svg.disabled{color:#ef4444}.plan-card .cancel-btn,.plan-card .upgrade-btn{border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;font-size:15px;font-weight:600;margin:0 24px 24px;padding:14px;transition:all .15s;width:calc(100% - 48px)}.plan-card .upgrade-btn{align-items:center;background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border:none;color:#fff;display:flex;gap:8px;justify-content:center}.plan-card .upgrade-btn:hover{box-shadow:0 4px 14px #0061ff40;box-shadow:var(--shadow-blue);transform:translateY(-2px)}.plan-card .cancel-btn{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);color:#64748b;color:var(--text-secondary)}.plan-card .cancel-btn:hover{border-color:#64748b;border-color:var(--text-secondary)}.upgrade-options{border-top:1px solid #e2e8f0;border-top:1px solid var(--border);padding:24px}.upgrade-options h4{color:#1a202c;color:var(--text);font-size:16px;margin-bottom:20px;text-align:center}.pricing-options{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:16px}.pricing-option{background:#f0f4f8;background:var(--bg-subtle);border:2px solid #e2e8f0;border:2px solid var(--border);border-radius:12px;border-radius:var(--radius);cursor:pointer;padding:20px;position:relative;text-align:center;transition:all .15s}.pricing-option:hover{transform:translateY(-2px)}.pricing-option.popular,.pricing-option:hover{border-color:#0061ff;border-color:var(--primary)}.pricing-option.popular{background:#e6f0ff;background:var(--primary-light)}.pricing-badge{background:#10b981;border-radius:20px;color:#fff;font-size:11px;font-weight:700;padding:4px 10px;position:absolute;right:-10px;top:-10px}.pricing-name{color:#64748b;color:var(--text-secondary);font-size:14px;margin-bottom:8px}.pricing-price{color:#1a202c;color:var(--text);font-size:28px;font-weight:700}.pricing-price span{color:#64748b;color:var(--text-secondary);font-size:14px;font-weight:400}.pricing-desc{color:#94a3b8;color:var(--text-muted);font-size:12px;margin:8px 0 16px}.pricing-btn{background:#0061ff;background:var(--primary);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px;width:100%}.pricing-option.popular .pricing-btn{background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient)}.pricing-btn:hover{opacity:.9}.trial-note{color:#64748b;color:var(--text-secondary);font-size:14px;margin:0;text-align:center}@media (max-width:500px){.pricing-options{grid-template-columns:1fr}}.benefits-reminder{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid #6ee7b7;border-radius:16px;border-radius:var(--radius-lg);padding:24px;text-align:center}.benefits-reminder h3{font-size:20px;margin-bottom:8px}.benefits-reminder p{color:#64748b;color:var(--text-secondary);margin-bottom:20px}.stats-row{display:flex;gap:40px;justify-content:center}.stats-row .stat{text-align:center}.stats-row .stat strong{color:#10b981;display:block;font-size:28px}.stats-row .stat span{color:#64748b;color:var(--text-secondary);font-size:13px}.cancel-modal{background:#fff;border-radius:16px;border-radius:var(--radius-lg);max-height:90vh;max-width:500px;overflow-y:auto;position:relative;width:100%}.cancel-step{padding:32px}.cancel-header{margin-bottom:24px;text-align:center}.cancel-emoji{display:block;font-size:48px;margin-bottom:16px}.cancel-header h2{font-size:22px;margin-bottom:8px}.cancel-header p{color:#64748b;color:var(--text-secondary)}.reasons-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.reason-btn{align-items:center;background:#f0f4f8;background:var(--bg-subtle);border:2px solid #e2e8f0;border:2px solid var(--border);border-radius:12px;border-radius:var(--radius);cursor:pointer;display:flex;flex-direction:column;font-size:14px;gap:8px;padding:20px 16px;transition:all .15s}.reason-btn:hover{background:#e6f0ff;background:var(--primary-light);border-color:#0061ff;border-color:var(--primary)}.reason-btn span:first-child{font-size:24px}.offer-card{background:#f0f4f8;background:var(--bg-subtle);border:2px solid #e2e8f0;border:2px solid var(--border);border-radius:12px;border-radius:var(--radius);margin-bottom:16px;padding:24px;position:relative;text-align:center}.offer-card.special{background:#e6f0ff;background:var(--primary-light);border-color:#0061ff;border-color:var(--primary)}.offer-badge{background:#0061ff;background:var(--primary);border-radius:20px;color:#fff;font-size:12px;font-weight:700;left:50%;padding:4px 16px;position:absolute;top:-12px;transform:translateX(-50%)}.offer-card h3{color:#0061ff;color:var(--primary);font-size:32px;margin:8px 0}.offer-card p{color:#64748b;color:var(--text-secondary);margin-bottom:16px}.offer-card ul{list-style:none;margin-bottom:20px;text-align:left}.offer-card ul li{align-items:center;display:flex;font-size:14px;gap:8px;padding:6px 0}.offer-card ul li svg{color:#10b981}.accept-offer-btn{align-items:center;background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;justify-content:center;padding:14px;width:100%}.accept-offer-btn:hover{box-shadow:0 4px 14px #0061ff40;box-shadow:var(--shadow-blue);transform:translateY(-2px)}.skip-offer{background:none;border:none;color:#94a3b8;color:var(--text-muted);cursor:pointer;display:block;font-size:13px;padding:12px;text-decoration:underline;width:100%}.skip-offer:hover{color:#64748b;color:var(--text-secondary)}.offers-stack{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.offer-card.mini{align-items:center;display:flex;gap:16px;padding:16px;text-align:left}.offer-card.mini svg:first-child{color:#0061ff;color:var(--primary);flex-shrink:0}.offer-card.mini div{flex:1 1}.offer-card.mini h4{font-size:15px;margin-bottom:2px}.offer-card.mini p{font-size:13px;margin:0}.offer-card.mini button{align-items:center;background:#0061ff;background:var(--primary);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;width:40px}.cancel-step.final .losing-features{background:#fef2f2;border:1px solid #fecaca;border-radius:12px;border-radius:var(--radius);margin-bottom:20px;padding:16px}.losing-item{align-items:center;color:#dc2626;display:flex;font-size:14px;gap:10px;padding:8px 0}.losing-item svg{flex-shrink:0}.final-offer{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:12px;border-radius:var(--radius);display:flex;gap:16px;margin-bottom:24px;padding:16px}.final-offer svg{color:#f59e0b;flex-shrink:0}.final-offer div{flex:1 1}.final-offer strong{display:block;font-size:15px}.final-offer p{color:#64748b;color:var(--text-secondary);font-size:13px;margin:0}.final-offer button{background:#f59e0b;border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-weight:600;padding:10px 20px}.cancel-actions{display:flex;gap:12px}.stay-btn{background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;flex:1 1;padding:14px}.confirm-cancel-btn,.stay-btn{cursor:pointer;font-weight:600}.confirm-cancel-btn{background:#fff;border:1px solid #ef4444;border-radius:8px;border-radius:var(--radius-sm);color:#ef4444;padding:14px 20px}.confirm-cancel-btn:hover{background:#fef2f2}.success-modal{background:#fff;border-radius:16px;border-radius:var(--radius-lg);max-width:400px;padding:40px;text-align:center}.success-icon{font-size:64px;margin-bottom:16px}.success-modal h2{margin-bottom:8px}.success-modal p{color:#64748b;color:var(--text-secondary);margin-bottom:24px}.success-modal button{background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-weight:600;padding:14px 40px}@media (max-width:600px){.plan-features ul,.reasons-grid{grid-template-columns:1fr}.stats-row{gap:20px}.cancel-actions{flex-direction:column}}.daily-tip-card{background:#e6f0ff;background:var(--primary-light);border:1px solid #0061ff33;border-radius:12px;border-radius:var(--radius);margin-bottom:24px;padding:20px}.daily-badge{background:#0061ff;background:var(--primary);border-radius:20px;color:#fff;display:inline-block;font-size:11px;font-weight:600;margin-bottom:12px;padding:4px 12px}.daily-content{align-items:flex-start;display:flex;gap:16px}.daily-emoji{font-size:40px}.daily-text h3{color:#1a202c;color:var(--text);font-size:16px;font-weight:600;margin-bottom:6px}.daily-text p{color:#64748b;color:var(--text-secondary);font-size:14px}.category-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.category-pill{align-items:center;background:#fff;background:var(--bg-white);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:50px;color:#64748b;color:var(--text-secondary);cursor:pointer;display:flex;font-size:13px;gap:6px;padding:8px 14px}.category-pill:hover{color:#1a202c;color:var(--text)}.category-pill.active,.category-pill:hover{border-color:#0061ff;border-color:var(--primary)}.category-pill.active{background:#0061ff;background:var(--primary);color:#fff}.tips-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-bottom:24px}.tip-card{background:#fff;background:var(--bg-white);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);cursor:pointer;display:flex;flex-direction:column;padding:20px;transition:all .2s ease}.tip-card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow);transform:translateY(-2px)}.tip-header{justify-content:space-between;margin-bottom:12px}.tip-header,.tip-icon{align-items:center;display:flex}.tip-icon{border-radius:12px;color:#fff;flex-shrink:0;height:44px;justify-content:center;width:44px}.tip-emoji{font-size:20px}.tip-card h3{color:#1a202c;color:var(--text);font-size:16px;font-weight:600;margin-bottom:8px}.tip-card p{color:#64748b;color:var(--text-secondary);flex-grow:1;font-size:14px;line-height:1.5;margin-bottom:12px}.tip-category-badge{font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.motivation-box{background:#fff;background:var(--bg-white);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);padding:20px}.motivation-content{align-items:center;display:flex;gap:16px}.motivation-emoji{font-size:40px}.motivation-content h3{color:#1a202c;color:var(--text);font-size:16px;font-weight:600;margin-bottom:4px}.motivation-content p{color:#64748b;color:var(--text-secondary);font-size:14px}.profile-locked{align-items:center;display:flex;flex-direction:column;justify-content:center;margin:0 auto;max-width:400px;padding:60px 20px;text-align:center}.locked-icon{font-size:64px;margin-bottom:20px}.profile-locked h2{color:#1a202c;color:var(--text);font-size:22px;font-weight:700;margin-bottom:10px}.profile-locked p{color:#64748b;color:var(--text-secondary);font-size:14px;margin-bottom:24px}.cta-button{background:#0061ff;background:var(--primary);border:none;border-radius:8px;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:15px;font-weight:600;margin-bottom:20px;padding:14px 28px}.cta-button:hover{background:#0052d9;background:var(--primary-hover);box-shadow:0 4px 14px #0061ff40;box-shadow:var(--shadow-blue)}.locked-benefits{color:var(--text-secondary);font-size:13px;gap:6px}.profile-content{max-width:700px}.profile-card{background:#fff;background:var(--bg-white);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);margin-bottom:20px;padding:20px}.profile-card.main-card{padding:32px;text-align:center}.profile-avatar-large{align-items:center;background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border-radius:50%;color:#fff;display:flex;font-size:28px;font-weight:700;height:72px;justify-content:center;margin:0 auto 14px;width:72px}.profile-card.main-card h2{color:#1a202c;color:var(--text);font-size:22px;font-weight:700;margin-bottom:4px}.profile-email{color:var(--text-muted);font-size:13px;margin-bottom:12px}.profile-goal-badge{background:#0061ff;background:var(--primary);border-radius:50px;color:#fff;display:inline-block;font-size:13px;font-weight:600;padding:6px 16px}.stats-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr);margin-bottom:20px}.stat-card{background:var(--bg-white);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);text-align:center}.stat-card svg{color:#0061ff;color:var(--primary);margin-bottom:8px}.stat-value{font-size:18px;margin-bottom:2px}.stat-label{font-size:11px}.card-header{justify-content:space-between;margin-bottom:20px}.card-header h3{font-size:16px;font-weight:600}.card-header h3,.edit-btn{color:#1a202c;color:var(--text)}.edit-btn{background:#f0f4f8;background:var(--bg-subtle);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);cursor:pointer;font-size:13px;padding:8px 16px}.edit-btn:hover{border-color:#0061ff;border-color:var(--primary);color:#0061ff;color:var(--primary)}.form-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.full-width{grid-column:span 2}.form-group label{align-items:center;color:#64748b;color:var(--text-secondary);display:flex;font-size:12px;font-weight:500;gap:6px}.form-group input,.form-group select{background:#fff;background:var(--bg-white);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);color:#1a202c;color:var(--text);font-family:inherit;font-size:14px;padding:10px 14px}.form-group input:focus,.form-group select:focus{border-color:#0061ff;border-color:var(--primary);outline:none}.form-group input:disabled,.form-group select:disabled{background:#f0f4f8;background:var(--bg-subtle);color:#94a3b8;color:var(--text-muted);cursor:not-allowed}.goal-select{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(5,1fr)}.goal-option{background:#fff;background:var(--bg-white);border:2px solid #e2e8f0;border:2px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:11px;gap:4px;padding:10px 6px}.goal-option.selected,.goal-option:hover:not(:disabled){border-color:#0061ff;border-color:var(--primary)}.goal-option.selected{background:#e6f0ff;background:var(--primary-light);color:#1a202c;color:var(--text)}.goal-option:disabled{opacity:.5}.form-actions{border-top:1px solid #edf2f7;border-top:1px solid var(--border-light);display:flex;gap:10px;justify-content:flex-end;margin-top:20px;padding-top:20px}.cancel-btn{background:#0000;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;border-radius:var(--radius-sm);color:#64748b;color:var(--text-secondary)}.cancel-btn,.save-btn{cursor:pointer;font-size:14px;padding:10px 20px}.save-btn{align-items:center;background:#0061ff;background:var(--primary);border:none;border-radius:8px;border-radius:var(--radius-sm);display:flex;font-weight:600;gap:8px}.save-btn:hover:not(:disabled){background:#0052d9;background:var(--primary-hover);box-shadow:0 4px 14px #0061ff40;box-shadow:var(--shadow-blue)}@media (max-width:900px){.stats-grid{grid-template-columns:repeat(2,1fr)}.goal-select{grid-template-columns:repeat(3,1fr)}.form-grid{grid-template-columns:1fr}.form-group.full-width{grid-column:span 1}}@media (max-width:768px){.mobile-header{background:#fff;background:var(--bg-white);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);height:56px;justify-content:space-between;left:0;padding:12px 16px;position:fixed;right:0;top:0;z-index:999}.menu-toggle,.mobile-header{align-items:center;display:flex}.menu-toggle{-webkit-tap-highlight-color:transparent;background:#f0f4f8;background:var(--bg-subtle);border:none;border-radius:12px;color:#1a202c;color:var(--text);cursor:pointer;height:44px;justify-content:center;width:44px}.menu-toggle:active{background:#e2e8f0;background:var(--border);transform:scale(.95)}.mobile-logo{align-items:center;color:#1a202c;color:var(--text);display:flex;font-size:18px;font-weight:700;gap:10px}.mobile-logo img{border-radius:10px;height:36px;object-fit:contain;width:36px}.sidebar-wrapper{height:100vh;left:-280px;position:fixed;top:0;transition:left .3s ease;width:260px;z-index:1001}.sidebar-wrapper.open{left:0}.sidebar-overlay{-webkit-tap-highlight-color:transparent;background:#00000080;display:block;inset:0;position:fixed;z-index:1000}.main-content{margin-left:0;min-height:calc(100vh - 56px);padding-top:56px}.chat-page{padding:16px 16px 100px}.chat-input-area{left:0;padding:12px 16px 20px}.welcome-hero h1{font-size:24px}.welcome-hero p{font-size:14px}.quick-actions-grid{gap:10px;grid-template-columns:1fr}.quick-action{padding:14px}.message-bubble{font-size:14px;max-width:85%}.profile-page,.recipes-page,.subscription-page,.tips-page{padding:16px}.page-header h1{font-size:22px}.page-header p{font-size:13px}.recipes-grid,.tips-grid{gap:12px;grid-template-columns:1fr}.recipe-card,.tip-card{padding:14px}.stats-grid{gap:10px;grid-template-columns:1fr 1fr}.stat-card{padding:14px}.stat-card .stat-value{font-size:22px}.profile-header-card{padding:20px}.profile-avatar{font-size:24px;height:60px;width:60px}.profile-stats{gap:10px;grid-template-columns:1fr 1fr}.goals-grid{gap:8px;grid-template-columns:repeat(2,1fr)}.goal-option{font-size:12px;padding:12px 8px}.form-row{grid-template-columns:1fr!important}.pricing-options{flex-direction:column;gap:12px}.challenges-page,.journal-page,.mealplan-page,.pricing-option,.pro-gate-page,.scanner-page,.weight-page{padding:16px}.pro-gate-card{margin:0;padding:24px 16px}.pro-gate-card h1{font-size:20px}.pro-gate-emoji{font-size:48px}.pro-gate-benefits{gap:8px}.benefit-row{font-size:13px}.category-tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}.category-tab{flex-shrink:0;white-space:nowrap}.days-tabs{-webkit-overflow-scrolling:touch;gap:4px;overflow-x:auto}.day-tab{font-size:12px;padding:8px 10px;white-space:nowrap}.meals-grid{grid-template-columns:1fr}.primary-btn,.secondary-btn{font-size:14px;padding:12px 16px}.header-btns{flex-wrap:wrap;gap:8px;width:100%}.header-btns button{flex:1 1;min-width:120px}}.journal-page{margin:0 auto;max-width:900px;padding:24px}.journal-page .page-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.add-entry-btn{align-items:center;background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border:none;border-radius:12px;border-radius:var(--radius);color:#fff;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:12px 20px;transition:all .2s}.add-entry-btn:hover{box-shadow:0 4px 12px #3b82f64d;transform:translateY(-2px)}.date-navigation{align-items:center;background:#f0f4f8;background:var(--bg-subtle);border-radius:12px;border-radius:var(--radius);display:flex;gap:16px;justify-content:center;margin-bottom:24px;padding:12px}.date-nav-btn{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:50%;height:36px;width:36px}.date-nav-btn:hover:not(:disabled){background:#0061ff;background:var(--primary);border-color:#0061ff;border-color:var(--primary)}.current-date{color:#1a202c;color:var(--text);min-width:200px}.daily-stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr);margin-bottom:32px}.stat-card{border:1px solid #edf2f7;border:1px solid var(--border-light);border-radius:12px;border-radius:var(--radius);overflow:hidden;padding:16px;position:relative}.stat-card:before{content:"";height:4px;left:0;position:absolute;right:0;top:0}.stat-card.calories:before{background:linear-gradient(90deg,#f59e0b,#f97316)}.stat-card.protein:before{background:linear-gradient(90deg,#ef4444,#dc2626)}.stat-card.carbs:before{background:linear-gradient(90deg,#3b82f6,#2563eb)}.stat-card.fat:before{background:linear-gradient(90deg,#8b5cf6,#7c3aed)}.stat-icon{border-radius:10px;height:44px;margin-bottom:12px;width:44px}.stat-card.calories .stat-icon{background:#fef3c7;color:#f59e0b}.stat-card.protein .stat-icon{background:#fee2e2;color:#ef4444}.stat-card.carbs .stat-icon{background:#dbeafe;color:#3b82f6}.stat-card.fat .stat-icon{background:#ede9fe;color:#8b5cf6}.stat-content{margin-bottom:12px}.stat-value{color:#1a202c;color:var(--text)}.stat-label{color:#94a3b8;color:var(--text-muted);font-size:12px;margin-left:4px}.stat-progress{background:#f0f4f8;background:var(--bg-subtle);border-radius:3px;height:6px;overflow:hidden}.stat-progress .progress-fill{border-radius:3px;height:100%;transition:width .3s ease}.stat-card.calories .progress-fill{background:linear-gradient(90deg,#f59e0b,#f97316)}.stat-card.protein .progress-fill{background:linear-gradient(90deg,#ef4444,#dc2626)}.stat-card.carbs .progress-fill{background:linear-gradient(90deg,#3b82f6,#2563eb)}.stat-card.fat .progress-fill{background:linear-gradient(90deg,#8b5cf6,#7c3aed)}.meals-section{background:#fff;border:1px solid #edf2f7;border:1px solid var(--border-light);border-radius:16px;border-radius:var(--radius-lg);margin-bottom:24px;padding:24px}.meals-section h2{font-size:18px;margin-bottom:16px}.meal-card{align-items:flex-start;background:#f0f4f8;background:var(--bg-subtle);border-radius:12px;border-radius:var(--radius);display:flex;gap:16px;padding:16px;transition:all .2s}.meal-card:hover{background:#f0f4f8}.meal-icon{border-radius:10px;color:#0061ff;color:var(--primary);height:40px;width:40px}.meal-content{flex:1 1;min-width:0}.meal-header{align-items:center}.meal-type{color:#1a202c;color:var(--text);font-size:14px}.meal-time{color:var(--text-muted);font-size:12px}.meal-description{color:var(--text-light);font-size:14px;line-height:1.4;margin-bottom:8px}.macro{align-items:center;background:#fff;border-radius:6px;display:flex;font-size:12px;gap:4px;padding:4px 8px}.macro.calories{color:#f59e0b}.macro.protein{color:#ef4444}.macro.carbs{color:#3b82f6}.macro.fat{color:#8b5cf6}.delete-meal-btn{background:#0000;border:none;border-radius:6px;color:#94a3b8;color:var(--text-muted);cursor:pointer;padding:8px;transition:all .2s}.delete-meal-btn:hover{background:#fee2e2;color:#ef4444}.empty-state svg{color:#94a3b8;color:var(--text-muted);opacity:.5}.empty-state h3{font-size:18px}.empty-state p{color:var(--text-muted);margin-bottom:20px}.empty-cta{align-items:center;background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border:none;border-radius:12px;border-radius:var(--radius);color:#fff;cursor:pointer;display:inline-flex;font-weight:600;gap:8px;padding:12px 24px}.weekly-chart-section{background:#fff;border:1px solid #edf2f7;border:1px solid var(--border-light);border-radius:16px;border-radius:var(--radius-lg);margin-bottom:24px;padding:24px}.weekly-chart-section h2{font-size:18px;margin-bottom:20px}.weekly-chart{align-items:flex-end;display:flex;gap:8px;height:200px;justify-content:space-between;padding:0 8px}.chart-bar-container{height:100%}.chart-bar-wrapper{position:relative}.chart-bar{transition:height .3s ease}.bar-value{color:#1a202c;color:var(--text);left:50%;position:absolute;top:-24px;transform:translateX(-50%);white-space:nowrap}.goal-line{border-radius:1px;height:2px;left:-10px;right:-10px}.goal-line,.goal-line:before{background:#ef4444;position:absolute}.goal-line:before{border-radius:50%;content:"";height:8px;left:0;top:-3px;width:8px}.chart-label{color:var(--text-muted)}.chart-legend{color:#94a3b8;color:var(--text-muted);display:flex;font-size:12px;justify-content:center;margin-top:16px}.legend-dot{border-radius:3px;display:inline-block;height:10px;margin-right:6px;width:10px}.legend-dot.goal{background:#ef4444}.ai-advice-section{background:linear-gradient(135deg,#eef2ff,#e0e7ff);border:1px solid #c7d2fe;border-radius:16px;border-radius:var(--radius-lg);padding:24px}.advice-header{flex-wrap:wrap;gap:12px}.advice-header h2{font-size:18px}.generate-advice-btn{align-items:center;background:#fff;border:1px solid #c7d2fe;border-radius:12px;border-radius:var(--radius);color:#0061ff;color:var(--primary);cursor:pointer;display:flex;font-weight:500;gap:8px;padding:10px 16px;transition:all .2s}.generate-advice-btn:hover:not(:disabled){background:#0061ff;background:var(--primary);color:#fff}.generate-advice-btn:disabled{cursor:not-allowed;opacity:.6}.advice-content p,.advice-placeholder{border-radius:var(--radius)}.advice-placeholder p{color:#94a3b8;color:var(--text-muted);margin:0}.add-meal-modal{max-width:500px;width:90%}.add-meal-modal .modal-body{padding:24px}.meal-type-selector{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(4,1fr);margin-bottom:20px}.meal-type-btn{background:#f0f4f8;background:var(--bg-subtle);border-radius:var(--radius);color:var(--text-light);font-size:12px;padding:12px 8px}.meal-type-btn.active{border-color:#0061ff;border-color:var(--primary);color:#0061ff;color:var(--primary)}.input-mode-toggle{display:flex;gap:8px;margin-bottom:16px}.mode-btn{align-items:center;background:#f0f4f8;background:var(--bg-subtle);border:2px solid #0000;border-radius:12px;border-radius:var(--radius);cursor:pointer;display:flex;flex:1 1;font-weight:500;gap:8px;justify-content:center;padding:12px;transition:all .2s}.mode-btn.active{background:#eef2ff;border-color:#0061ff;border-color:var(--primary);color:#0061ff;color:var(--primary)}.meal-description-input{border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);font-family:inherit;font-size:15px;padding:16px;resize:vertical;width:100%}.meal-description-input:focus{border-color:#0061ff;border-color:var(--primary);outline:none}.photo-input,.photo-upload-zone{display:flex;flex-direction:column;gap:12px}.photo-upload-zone{align-items:center;border:2px dashed #e2e8f0;border:2px dashed var(--border);border-radius:12px;border-radius:var(--radius);color:#94a3b8;color:var(--text-muted);cursor:pointer;justify-content:center;padding:40px;transition:all .2s}.photo-upload-zone:hover{background:#f8fafc;border-color:#0061ff;border-color:var(--primary)}.photo-upload-zone input{display:none}.photo-preview{border-radius:12px;border-radius:var(--radius);overflow:hidden;position:relative}.photo-preview img{max-height:200px;object-fit:cover;width:100%}.remove-photo{align-items:center;background:#0009;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:28px;justify-content:center;position:absolute;right:8px;top:8px;width:28px}.analyze-btn{background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border-radius:var(--radius);font-size:15px;gap:8px;padding:14px}.nutrition-result{border:1px solid #a7f3d0;border-radius:12px;border-radius:var(--radius)}.nutrition-result h3{font-size:15px}.nutrition-item{align-items:center;display:flex;flex-direction:column;gap:6px;text-align:center}.nutrition-item input{border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:6px;font-size:16px;font-weight:600;padding:8px;text-align:center;width:70px}.nutrition-item span{font-size:11px}.nutrition-item span,.nutrition-note{color:#94a3b8;color:var(--text-muted)}.nutrition-note{font-size:12px;margin-top:12px;text-align:center}.nav-item.locked{opacity:.6}.nav-item.locked:hover{background:#f0f4f8;background:var(--bg-subtle)}.nav-lock{color:#94a3b8;color:var(--text-muted);margin-left:auto}.nav-pro-badge{background:linear-gradient(135deg,#f59e0b,#f97316);border-radius:4px;color:#fff;font-size:10px;font-weight:600;margin-left:auto;padding:2px 6px}.auth-buttons{display:flex;flex-direction:column;gap:8px}.login-secondary{align-items:center;background:#0000;border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);color:#1a202c;color:var(--text);cursor:pointer;display:flex;font-weight:500;gap:8px;justify-content:center;padding:12px;transition:all .2s}.login-secondary:hover{background:#f0f4f8;background:var(--bg-subtle);border-color:#0061ff;border-color:var(--primary);color:#0061ff;color:var(--primary)}.loading-state{color:#94a3b8;color:var(--text-muted);gap:12px;padding:48px}@media (max-width:768px){.journal-page{padding:16px}.daily-stats-grid,.meal-type-selector,.nutrition-grid{grid-template-columns:repeat(2,1fr)}.chart-bar{max-width:30px}.bar-value{font-size:9px}}@media (max-width:480px){.daily-stats-grid{grid-template-columns:1fr}.advice-content{flex-direction:column}.advice-avatar{height:40px;width:40px}}.louis-intro{margin-bottom:16px;position:relative}.louis-avatar-large{border:3px solid #fff;border-radius:50%;box-shadow:0 4px 12px #0000001a;height:80px;object-fit:cover;width:80px}.louis-badge{background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border-radius:12px;bottom:-4px;color:#fff;font-size:10px;font-weight:600;left:50%;padding:3px 10px;position:absolute;transform:translateX(-50%);white-space:nowrap}.chat-header-louis{align-items:center;display:flex;gap:12px}.louis-avatar-small{border-radius:50%;height:40px;object-fit:cover;width:40px}.chat-header-louis h3{font-size:16px;margin:0}.louis-status{color:#10b981;font-size:12px}.message-content{display:flex;flex-direction:column;gap:4px;max-width:70%}.message-sender{color:#94a3b8;color:var(--text-muted);font-size:12px;font-weight:600;margin-left:4px}.weight-page{margin:0 auto;max-width:900px;padding:24px}.weight-stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr);margin-bottom:24px}.weight-stat-card{align-items:center;background:#fff;border:1px solid #edf2f7;border:1px solid var(--border-light);border-radius:12px;border-radius:var(--radius);cursor:pointer;display:flex;gap:16px;padding:20px;transition:all .2s}.weight-stat-card:hover{box-shadow:0 4px 12px #00000014}.weight-stat-card svg{color:#0061ff;color:var(--primary)}.weight-stat-card.current svg{color:#3b82f6}.weight-stat-card.progress svg{color:#10b981}.weight-stat-card.goal svg{color:#f59e0b}.weight-stat-card.remaining svg{color:#8b5cf6}.stat-info{flex:1 1}.stat-info .stat-value{display:block;font-size:24px;font-weight:700}.stat-info .stat-value.positive{color:#10b981}.stat-info .stat-value.negative{color:#ef4444}.stat-info .stat-label{font-size:13px}.card-arrow,.stat-info .stat-label{color:#94a3b8;color:var(--text-muted)}.progress-section{border:1px solid #edf2f7;border:1px solid var(--border-light);border-radius:12px;border-radius:var(--radius)}.progress-percent{color:#0061ff;color:var(--primary)}.progress-bar-large{background:#f0f4f8;background:var(--bg-subtle);border-radius:10px;height:20px;overflow:visible;position:relative}.progress-fill-large{background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border-radius:10px;height:100%;transition:width .5s ease}.progress-markers{color:var(--text-muted);font-size:12px}.prediction-card{background:linear-gradient(135deg,#eef2ff,#e0e7ff);border:1px solid #c7d2fe;border-radius:12px;border-radius:var(--radius);display:flex;gap:16px;margin-bottom:24px;padding:20px}.prediction-icon{align-items:center;background:#fff;border-radius:12px;color:#0061ff;color:var(--primary);display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.prediction-content h3{font-size:16px;margin:0 0 8px}.prediction-content p{font-size:14px;line-height:1.5;margin:0}.chart-section{background:#fff;border:1px solid #edf2f7;border:1px solid var(--border-light);border-radius:16px;border-radius:var(--radius-lg);margin-bottom:24px;padding:24px}.chart-section h2{font-size:18px;margin-bottom:20px}.weight-chart{display:flex;gap:16px;height:200px}.chart-y-axis{color:#94a3b8;color:var(--text-muted);display:flex;flex-direction:column;font-size:11px;justify-content:space-between;padding:5px 0}.chart-area{flex:1 1;position:relative}.empty-chart{color:#94a3b8;color:var(--text-muted);padding:48px;text-align:center}.empty-chart svg{margin-bottom:16px;opacity:.3}.motivation-card{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:12px;border-radius:var(--radius);display:flex;gap:16px;margin-bottom:24px;padding:20px}.motivation-card p{font-weight:500;margin:0}.history-section{background:#fff;border:1px solid #edf2f7;border:1px solid var(--border-light);border-radius:16px;border-radius:var(--radius-lg);padding:24px}.history-section h2{font-size:18px;margin-bottom:16px}.entry-row{border-bottom:1px solid #edf2f7;border-bottom:1px solid var(--border-light);padding:12px 0}.entry-date{color:var(--text-light)}.entry-weight{font-size:16px;font-weight:600}.entry-diff{border-radius:6px;font-weight:500;padding:4px 8px}.entry-delete{background:#0000;border:none;border-radius:6px;color:#94a3b8;color:var(--text-muted);cursor:pointer;margin-left:auto;padding:6px}.entry-delete:hover{background:#fee2e2;color:#ef4444}.weight-input-large{font-size:32px!important;font-weight:700;text-align:center}.goal-preview{align-items:center;background:#eef2ff;border-radius:12px;border-radius:var(--radius);color:#0061ff;color:var(--primary);display:flex;gap:12px;margin-top:16px;padding:16px}.mealplan-page{margin:0 auto;max-width:1000px;padding:24px}.header-actions{display:flex;gap:12px}.no-plan-state{padding:48px 24px;text-align:center}.no-plan-content{margin:0 auto 48px;max-width:500px}.no-plan-content svg{color:#0061ff;color:var(--primary);margin-bottom:24px}.no-plan-content h2{margin-bottom:12px}.no-plan-content p{color:#94a3b8;color:var(--text-muted);margin-bottom:24px}.generate-cta{align-items:center;background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border:none;border-radius:12px;border-radius:var(--radius);color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;gap:8px;padding:14px 28px}.plan-features{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr);margin:0 auto;max-width:700px}.feature{background:#fff;border:1px solid #edf2f7;border:1px solid var(--border-light);border-radius:12px;border-radius:var(--radius);padding:24px}.feature svg{color:#0061ff;color:var(--primary);margin-bottom:12px}.feature h4{margin-bottom:8px}.feature p{color:#94a3b8;color:var(--text-muted);font-size:14px;margin:0}.plan-header-card{align-items:center;background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border-radius:16px;border-radius:var(--radius-lg);color:#fff;display:flex;justify-content:space-between;margin-bottom:24px;padding:24px}.plan-info h2{margin:0 0 8px}.plan-info p{margin:0;opacity:.9}.plan-meta{font-size:13px;opacity:.8}.days-selector{display:flex;gap:8px;margin-bottom:24px;overflow-x:auto;padding-bottom:8px}.day-btn{background:#fff;border:2px solid #edf2f7;border:2px solid var(--border-light);border-radius:12px;border-radius:var(--radius);cursor:pointer;flex:1 1;min-width:80px;padding:12px 8px;text-align:center;transition:all .2s}.day-btn.active,.day-btn:hover{border-color:#0061ff;border-color:var(--primary)}.day-btn.active{background:#0061ff;background:var(--primary);color:#fff}.day-short{display:none}.day-full{display:block;font-weight:500}.day-meals{background:#fff;border:1px solid #edf2f7;border:1px solid var(--border-light);border-radius:16px;border-radius:var(--radius-lg);margin-bottom:24px;padding:24px}.day-header{align-items:center;border-bottom:1px solid #edf2f7;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.day-header h3{margin:0}.day-calories{border-radius:20px;font-size:14px;font-weight:600;padding:6px 12px}.day-calories,.meal-plan-card{background:#f0f4f8;background:var(--bg-subtle)}.meal-plan-card{border-radius:var(--radius)}.meal-card-header{align-items:center;color:#94a3b8;color:var(--text-muted);display:flex;font-size:14px;gap:8px;margin-bottom:12px}.meal-calories{color:#0061ff;color:var(--primary);font-weight:600;margin-left:auto}.meal-plan-card h4{font-size:16px;margin:0 0 8px}.meal-plan-card p{color:var(--text-light);font-size:14px;margin:0 0 12px}.meal-card-footer{color:#94a3b8;color:var(--text-muted);font-size:12px}.shopping-section{background:#fff;border:1px solid #edf2f7;border:1px solid var(--border-light);border-radius:16px;border-radius:var(--radius-lg);margin-bottom:24px;padding:24px}.shopping-section h3{align-items:center;display:flex;gap:8px;margin-bottom:20px}.shopping-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.shopping-category h4{color:#0061ff;color:var(--primary);font-size:14px;margin-bottom:12px}.shopping-category ul{list-style:none;margin:0;padding:0}.shopping-category li{align-items:center;color:var(--text-light);display:flex;font-size:14px;gap:8px;padding:6px 0}.shopping-category li svg{color:#10b981;flex-shrink:0}.tips-section{background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:16px;border-radius:var(--radius-lg);padding:24px}.tips-section h3{align-items:center;display:flex;gap:8px;margin-bottom:16px}.tips-section ul{list-style:none;margin:0;padding:0}.tips-section li{padding:8px 0 8px 24px;position:relative}.tips-section li:before{content:"💡";left:0;position:absolute}.preferences-modal{max-width:550px}.pref-section{margin-bottom:20px}.pref-section label{display:block;font-weight:600;margin-bottom:10px}.diet-options{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}.diet-btn{background:#f0f4f8;background:var(--bg-subtle);border-radius:var(--radius);padding:12px}.diet-btn.active{border-color:#0061ff;border-color:var(--primary)}.allergies-grid{display:flex;flex-wrap:wrap;gap:8px}.allergy-btn{background:#f0f4f8;background:var(--bg-subtle);border:1px solid #e2e8f0;border:1px solid var(--border);padding:8px 12px}.pref-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.pref-section input[type=text],.pref-section select{border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);font-size:14px;padding:12px;width:100%}.scanner-page{margin:0 auto;max-width:700px;padding:24px}.scanner-modes .mode-btn{align-items:center;background:#fff;border:2px solid #edf2f7;border:2px solid var(--border-light);border-radius:12px;border-radius:var(--radius);cursor:pointer;display:flex;flex:1 1;font-weight:500;gap:10px;justify-content:center;padding:16px;transition:all .2s}.scanner-modes .mode-btn.active,.scanner-modes .mode-btn:hover{border-color:#0061ff;border-color:var(--primary)}.scanner-modes .mode-btn.active{background:#0061ff;background:var(--primary);color:#fff}.upload-zone{background:#f0f4f8;background:var(--bg-subtle);border:2px dashed #e2e8f0;border:2px dashed var(--border);border-radius:var(--radius-lg)}.upload-zone:hover{background:#f8fafc;border-color:#0061ff;border-color:var(--primary)}.upload-content svg{color:#0061ff;color:var(--primary)}.upload-content p{color:var(--text-muted)}.preview-area{position:relative}.image-preview{background:#f0f4f8;background:var(--bg-subtle);border-radius:var(--radius-lg)}.remove-image{background:#0009;border:none;border-radius:50%;height:36px;justify-content:center;right:12px;top:12px;width:36px}.preview-area .analyze-btn,.remove-image{align-items:center;color:#fff;cursor:pointer;display:flex;position:absolute}.preview-area .analyze-btn{background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border:none;border-radius:12px;border-radius:var(--radius);bottom:16px;box-shadow:0 4px 12px #0003;font-weight:600;gap:8px;left:50%;padding:14px 28px;transform:translateX(-50%)}.analyzing-state{align-items:center;background:#ffffffe6;border-radius:16px;border-radius:var(--radius-lg);display:flex;flex-direction:column;inset:0;justify-content:center;position:absolute}.analyzing-state p{font-weight:500;margin-top:12px}.scan-result{border:1px solid #edf2f7;border:1px solid var(--border-light);border-radius:var(--radius-lg)}.result-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:20px}.result-info h2{margin:0 0 8px}.result-info p{color:#94a3b8;color:var(--text-muted)}.health-score{background:#f0f4f8;background:var(--bg-subtle);border:3px solid var(--score-color);border-radius:var(--radius);padding:16px}.score-value{color:var(--score-color);font-size:32px;font-weight:700}.score-label{color:#94a3b8;color:var(--text-muted);font-size:14px}.verdict-card{align-items:center;background:#f0f4f8;background:var(--bg-subtle);border-left:4px solid;border-radius:0 12px 12px 0;border-radius:0 var(--radius) var(--radius) 0;display:flex;gap:16px;margin-bottom:20px;padding:16px}.verdict-content strong{display:block;margin-bottom:4px}.verdict-content p{color:var(--text-light);font-size:14px;margin:0}.nutrition-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr);margin-bottom:20px}.nutri-card{background:#f0f4f8;background:var(--bg-subtle);border-radius:12px;border-radius:var(--radius);padding:16px;text-align:center}.nutri-card svg{margin-bottom:8px}.nutri-card.calories{color:#f59e0b}.nutri-card.protein{color:#ef4444}.nutri-card.carbs{color:#3b82f6}.nutri-card.fat{color:#8b5cf6}.nutri-value{color:#1a202c;color:var(--text);display:block;font-size:20px;font-weight:700}.nutri-label{color:#94a3b8;color:var(--text-muted);font-size:12px}.can-eat-card{align-items:center;border-radius:12px;border-radius:var(--radius);display:flex;gap:16px;margin-bottom:20px;padding:16px}.can-eat-card.yes{background:#d1fae5;color:#065f46}.can-eat-card.no{background:#fee2e2;color:#991b1b}.can-eat-card strong{display:block;margin-bottom:4px}.can-eat-card p{font-size:14px;margin:0}.alternatives-card,.tips-card{background:#f0f4f8;background:var(--bg-subtle);border-radius:12px;border-radius:var(--radius);margin-bottom:16px;padding:16px}.alternatives-card h3,.tips-card h3{font-size:15px;margin-bottom:12px}.alternatives-card ul,.tips-card ul{list-style:none;margin:0;padding:0}.alternatives-card li,.tips-card li{align-items:center;display:flex;font-size:14px;gap:8px;padding:6px 0}.alternatives-card li svg{color:#10b981}.new-scan-btn{align-items:center;background:#f0f4f8;background:var(--bg-subtle);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;border-radius:var(--radius);cursor:pointer;display:flex;font-weight:500;gap:8px;justify-content:center;margin-top:16px;padding:14px;width:100%}.new-scan-btn:hover{background:#0061ff;background:var(--primary);border-color:#0061ff;border-color:var(--primary);color:#fff}.error-result{background:#fef2f2;border-radius:16px;border-radius:var(--radius-lg);padding:48px;text-align:center}.error-result svg{color:#ef4444;margin-bottom:16px}.error-result p{color:#94a3b8;color:var(--text-muted);margin-bottom:20px}.scanner-info{background:#fff;border:1px solid #edf2f7;border:1px solid var(--border-light);border-radius:16px;border-radius:var(--radius-lg);padding:24px}.scanner-info h3{margin-bottom:20px;text-align:center}.info-steps{display:flex;gap:16px;justify-content:space-around}.step{flex:1 1}.step-number{align-items:center;background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border-radius:50%;color:#fff;display:flex;font-weight:700;height:40px;justify-content:center;margin:0 auto 12px;width:40px}.step p{color:var(--text-light)}.challenges-page{margin:0 auto;max-width:900px;padding:24px}.challenge-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr);margin-bottom:24px}.challenge-stats .stat-card{align-items:center;background:#fff;border:1px solid #edf2f7;border:1px solid var(--border-light);border-radius:12px;border-radius:var(--radius);display:flex;gap:16px;padding:20px}.challenge-stats .stat-card svg{color:#0061ff;color:var(--primary)}.challenge-stats .stat-card .stat-value{display:block;font-size:28px;font-weight:700}.challenge-stats .stat-card .stat-label{color:#94a3b8;color:var(--text-muted);font-size:13px}.active-challenge-card{background:#fff;border:2px solid var(--challenge-color);border-radius:16px;border-radius:var(--radius-lg);margin-bottom:24px;padding:24px}.challenge-header{align-items:center;display:flex;gap:16px;margin-bottom:24px}.challenge-info h2{font-size:20px}.challenge-info p{color:#94a3b8;color:var(--text-muted)}.challenge-points{background:#f0f4f8;background:var(--bg-subtle);border-radius:12px;border-radius:var(--radius);padding:12px 20px;text-align:center}.challenge-points span:first-child{color:var(--challenge-color);display:block;font-size:24px;font-weight:700}.challenge-points span:last-child{color:#94a3b8;color:var(--text-muted);font-size:12px}.challenge-progress .progress-header{display:flex;font-size:14px;justify-content:space-between;margin-bottom:8px}.challenge-progress .progress-bar{background:#f0f4f8;background:var(--bg-subtle);border-radius:6px;height:12px;overflow:hidden}.challenge-progress .progress-fill{border-radius:6px;height:100%;transition:width .5s ease}.days-tracker{display:flex;justify-content:space-between;margin-bottom:24px}.day-circle{align-items:center;color:#94a3b8;color:var(--text-muted);display:flex;flex-direction:column;gap:6px}.day-circle.completed{color:#10b981}.day-circle span{font-size:12px;font-weight:500}.validate-day-btn{align-items:center;background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border:none;border-radius:12px;border-radius:var(--radius);color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;padding:16px;width:100%}.validate-day-btn.done{background:#10b981;cursor:default}.validate-day-btn:disabled{opacity:.8}.no-challenge-card{background:#fff;border:1px solid #edf2f7;border:1px solid var(--border-light);border-radius:16px;border-radius:var(--radius-lg);margin-bottom:24px;padding:48px;text-align:center}.no-challenge-card svg{color:#0061ff;color:var(--primary);margin-bottom:16px}.no-challenge-card h2{margin-bottom:8px}.no-challenge-card p{color:#94a3b8;color:var(--text-muted);margin-bottom:24px}.join-challenge-btn{align-items:center;background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border:none;border-radius:12px;border-radius:var(--radius);color:#fff;cursor:pointer;display:inline-flex;font-weight:600;gap:8px;padding:14px 28px}.leaderboard-section{background:#fff;border:1px solid #edf2f7;border:1px solid var(--border-light);border-radius:16px;border-radius:var(--radius-lg);margin-bottom:24px;padding:24px}.leaderboard-section h2{align-items:center;display:flex;gap:8px;margin-bottom:16px}.leaderboard-list{display:flex;flex-direction:column}.leaderboard-row{align-items:center;border-radius:12px;border-radius:var(--radius);display:flex;gap:16px;padding:12px;transition:background .2s}.leaderboard-row:hover{background:#f0f4f8;background:var(--bg-subtle)}.leaderboard-row.current-user{background:#eef2ff}.leaderboard-row .user-info{align-items:center;display:flex;flex:1 1;gap:8px}.user-name{font-weight:500}.you-badge{background:#0061ff;background:var(--primary);border-radius:4px;color:#fff;font-size:10px;padding:2px 6px}.user-points{color:#0061ff;color:var(--primary);font-weight:600}.empty-leaderboard{color:#94a3b8;color:var(--text-muted);padding:24px;text-align:center}.badges-section{background:#fff;border:1px solid #edf2f7;border:1px solid var(--border-light);border-radius:16px;border-radius:var(--radius-lg);padding:24px}.badges-section h2{gap:8px;margin-bottom:16px}.badge-card,.badges-section h2{align-items:center;display:flex}.badge-card{background:#f0f4f8;background:var(--bg-subtle);border-radius:12px;border-radius:var(--radius);gap:12px;padding:16px}.badge-card.locked{opacity:.5}.badge-card.locked .badge-icon{color:#94a3b8;color:var(--text-muted)}.badge-info .badge-name{display:block;font-size:14px;font-weight:600}.badge-info .badge-desc{color:#94a3b8;color:var(--text-muted);font-size:12px}.challenges-modal .challenges-list{display:flex;flex-direction:column;gap:12px}.challenge-option{background:#f0f4f8;background:var(--bg-subtle);border-radius:var(--radius)}.challenge-option .challenge-icon{border-radius:12px;flex-shrink:0;height:48px;width:48px}.challenge-details{flex:1 1}.challenge-details h4{margin:0 0 4px}.challenge-details p{color:var(--text-light);font-size:13px;margin:0 0 4px}.challenge-meta{color:#94a3b8;color:var(--text-muted);font-size:12px}.join-btn{background:linear-gradient(135deg,#0061ff,#00d4ff);background:var(--gradient);border-radius:12px;border-radius:var(--radius)}@media (max-width:768px){.weight-stats-grid{grid-template-columns:repeat(2,1fr)}.meals-grid,.plan-features{grid-template-columns:1fr}.day-short{display:block}.day-full{display:none}.nutrition-grid{grid-template-columns:repeat(2,1fr)}.info-steps{flex-direction:column;gap:24px}.badges-grid,.challenge-stats{grid-template-columns:1fr}}.pro-gate{align-items:center;display:flex;justify-content:center;min-height:70vh;padding:24px;position:relative}.pro-gate-preview{filter:blur(3px);inset:0;opacity:.15;pointer-events:none;position:absolute}.pro-gate-content{background:#fff;border-radius:20px;box-shadow:0 20px 60px #00000026;max-width:500px;padding:48px;position:relative;text-align:center}.pro-gate-icon{align-items:center;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:50%;color:#fff;display:flex;height:72px;justify-content:center;margin:0 auto 24px;width:72px}.pro-gate-content h2{color:#1e293b;font-size:26px;margin-bottom:12px}.pro-gate-desc{line-height:1.6;margin-bottom:24px}.benefit-item{align-items:center;color:#334155;display:flex;gap:12px;padding:10px 0}.benefit-item svg{color:#10b981;flex-shrink:0}.pro-gate-cta{margin-bottom:20px}.pro-gate-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:17px;font-weight:600;gap:10px;justify-content:center;padding:16px 24px;text-decoration:none;transition:all .3s;width:100%}.pro-gate-btn:hover{box-shadow:0 8px 20px #3b82f666;transform:translateY(-2px)}.pro-gate-pricing{align-items:baseline;color:#64748b;display:flex;gap:4px;justify-content:center;margin-top:16px}.pro-gate-pricing .price{color:#1e293b;font-size:28px;font-weight:700}.pro-gate-pricing .trial{color:#10b981;font-weight:500}.pro-gate-guarantee{color:#94a3b8;font-size:13px;gap:8px}.modal-overlay,.pro-gate-guarantee{align-items:center;display:flex;justify-content:center}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;inset:0;padding:20px;position:fixed;z-index:1000}.modal-box{background:#fff;border-radius:16px;box-shadow:0 25px 50px #00000040;max-height:90vh;max-width:520px;overflow-y:auto;width:100%}.modal-box.small{max-width:400px}.modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:20px 24px}.modal-header h2{font-size:20px;margin:0}.modal-close-btn{align-items:center;background:#f1f5f9;border:none;border-radius:10px;color:#64748b;cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s;width:40px}.modal-close-btn:hover{background:#e2e8f0;color:#1e293b}.modal-body{padding:24px}.modal-footer{border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.form-group{margin-bottom:20px}.form-group label{color:#334155;display:block;font-weight:600;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{border:2px solid #e2e8f0;border-radius:10px;font-size:15px;padding:12px 16px;transition:all .2s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.large-input{font-size:32px!important;font-weight:700;text-align:center}.primary-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;font-size:15px;font-weight:600;gap:8px;justify-content:center;padding:12px 24px;transition:all .2s}.primary-btn:hover:not(:disabled){box-shadow:0 4px 12px #3b82f666;transform:translateY(-1px)}.primary-btn:disabled{cursor:not-allowed;opacity:.6}.primary-btn.large{font-size:17px;padding:16px 32px}.secondary-btn{align-items:center;background:#f1f5f9;border:none;border-radius:10px;color:#475569;cursor:pointer;display:inline-flex;font-weight:500;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s}.secondary-btn:hover{background:#e2e8f0}.secondary-btn.small{font-size:13px;padding:8px 14px}.secondary-btn.full{width:100%}.stats-grid-4{grid-gap:16px;grid-template-columns:repeat(4,1fr)}.stats-grid-3,.stats-grid-4{display:grid;gap:16px;margin-bottom:24px}.stats-grid-3{grid-gap:16px;grid-template-columns:repeat(3,1fr)}.stat-card{align-items:center;background:#fff;border-radius:14px;box-shadow:0 2px 8px #0000000f;display:flex;gap:16px;padding:20px;transition:all .2s}.stat-card:hover{box-shadow:0 4px 16px #0000001a}.stat-card.clickable{cursor:pointer}.stat-card svg{flex-shrink:0}.stat-card.orange svg{color:#f59e0b}.stat-card.red svg{color:#ef4444}.stat-card.blue svg{color:#3b82f6}.stat-card.purple svg{color:#8b5cf6}.stat-card.green svg{color:#10b981}.stat-card.yellow svg{color:#eab308}.stat-content{flex:1 1;min-width:0}.stat-value{color:#1e293b;display:block;font-size:24px;font-weight:700;line-height:1.2}.stat-bar{background:#e2e8f0;border-radius:3px;height:6px;margin-top:12px;overflow:hidden}.stat-card.orange .stat-bar div{background:#f59e0b}.stat-card.red .stat-bar div{background:#ef4444}.stat-card.blue .stat-bar div{background:#3b82f6}.stat-card.purple .stat-bar div{background:#8b5cf6}.card{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f;margin-bottom:24px;padding:24px}.card h2{align-items:center;display:flex;font-size:18px;gap:8px;margin-bottom:16px}.date-nav{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;gap:16px;margin-bottom:24px;padding:12px 20px}.date-nav,.date-nav-btn{align-items:center;display:flex;justify-content:center}.date-nav-btn{background:#f1f5f9;border:none;border-radius:10px;color:#64748b;cursor:pointer;height:40px;transition:all .2s;width:40px}.date-nav-btn:hover:not(:disabled){background:#3b82f6;color:#fff}.date-nav-btn:disabled{cursor:not-allowed;opacity:.4}.current-date{align-items:center;color:#1e293b;display:flex;font-weight:600;gap:8px;justify-content:center;min-width:180px}.meal-type-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(4,1fr);margin-bottom:20px}.meal-type-btn{align-items:center;background:#f8fafc;border:2px solid #0000;border-radius:12px;color:#64748b;cursor:pointer;display:flex;flex-direction:column;font-size:13px;gap:6px;padding:14px 10px;transition:all .2s}.meal-type-btn:hover{background:#eef2ff}.meal-type-btn.active{background:#eef2ff;border-color:#3b82f6;color:#3b82f6}.input-mode-tabs{display:flex;gap:8px;margin-bottom:16px}.tab-btn{align-items:center;background:#f8fafc;border:2px solid #0000;border-radius:10px;color:#64748b;cursor:pointer;display:flex;flex:1 1;font-weight:500;gap:8px;justify-content:center;padding:12px;transition:all .2s}.tab-btn.active{background:#eef2ff;border-color:#3b82f6;color:#3b82f6}.photo-section,.photo-upload-box{display:flex;flex-direction:column;gap:12px}.photo-upload-box{align-items:center;border:2px dashed #cbd5e1;border-radius:12px;color:#64748b;cursor:pointer;justify-content:center;padding:40px;transition:all .2s}.photo-upload-box:hover{background:#f8fafc;border-color:#3b82f6}.photo-upload-box input{display:none}.photo-preview-box{border-radius:12px;overflow:hidden;position:relative}.photo-preview-box img{max-height:200px;object-fit:cover;width:100%}.photo-remove-btn{align-items:center;background:#0009;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:32px;justify-content:center;position:absolute;right:8px;top:8px;width:32px}.description-input{border:2px solid #e2e8f0;border-radius:12px;font-family:inherit;font-size:15px;padding:16px;resize:none;width:100%}.analyze-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;justify-content:center;margin-top:16px;padding:16px;transition:all .2s;width:100%}.analyze-btn:hover:not(:disabled){box-shadow:0 4px 16px #3b82f666;transform:translateY(-1px)}.analyze-btn:disabled{cursor:not-allowed;opacity:.6}.nutrition-result{background:#ecfdf5;border:2px solid #a7f3d0;border-radius:14px;margin-top:16px;padding:20px}.nutrition-result h3{color:#059669;font-size:16px;margin-bottom:16px}.nutrition-inputs{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr)}.nutri-input{align-items:center;display:flex;flex-direction:column;gap:6px;text-align:center}.nutri-input svg{color:#64748b}.nutri-input input{background:#fff;border:2px solid #d1fae5;border-radius:8px;font-size:18px;font-weight:700;padding:10px;text-align:center;width:80px}.nutri-input input:focus{border-color:#10b981;outline:none}.nutri-input span{color:#64748b;font-size:12px}.nutri-note{color:#64748b;font-size:13px;margin-top:12px;text-align:center}.meals-list{display:flex;flex-direction:column;gap:12px}.meal-item{align-items:flex-start;background:#f8fafc;border-radius:12px;display:flex;gap:16px;padding:16px;transition:all .2s}.meal-item:hover{background:#f1f5f9}.meal-icon{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000000d;color:#3b82f6;display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.meal-info{flex:1 1;min-width:0}.meal-header{display:flex;justify-content:space-between;margin-bottom:4px}.meal-type{color:#1e293b;font-weight:600}.meal-time{color:#94a3b8;font-size:13px}.meal-desc{color:#64748b;font-size:14px;line-height:1.4;margin-bottom:8px}.meal-macros{display:flex;flex-wrap:wrap;gap:12px}.meal-macros span{align-items:center;color:#64748b;display:flex;font-size:13px;gap:4px}.delete-btn{background:#0000;border:none;border-radius:8px;color:#94a3b8;cursor:pointer;padding:8px;transition:all .2s}.delete-btn:hover{background:#fee2e2;color:#ef4444}.week-chart{align-items:flex-end;display:flex;gap:8px;height:180px;justify-content:space-between;padding:0 4px}.chart-day{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:8px;height:100%}.chart-bar{background:linear-gradient(180deg,#3b82f6,#60a5fa);border-radius:6px 6px 0 0;position:relative;transition:height .3s}.chart-bar.over{background:linear-gradient(180deg,#f59e0b,#fbbf24)}.chart-bar span{color:#64748b;font-size:11px;left:50%;position:absolute;top:-22px;transform:translateX(-50%);white-space:nowrap}.chart-label{color:#94a3b8;font-size:12px;text-transform:capitalize}.advice-card{background:linear-gradient(135deg,#eef2ff,#e0e7ff);border-radius:16px;margin-bottom:24px;padding:24px}.advice-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.advice-header h2{align-items:center;display:flex;gap:8px;margin:0}.advice-content{align-items:flex-start;display:flex;gap:16px}.advice-avatar{border-radius:50%;flex-shrink:0;height:48px;width:48px}.advice-content p{background:#fff;border-radius:12px;flex:1 1;line-height:1.6;margin:0;padding:16px}.advice-placeholder{background:#fff;border-radius:12px;color:#64748b;padding:20px;text-align:center}.empty-state{padding:48px 24px;text-align:center}.empty-state svg{color:#cbd5e1;margin-bottom:16px}.empty-state h3{color:#475569;margin-bottom:8px}.empty-state p{color:#94a3b8;margin-bottom:24px}.empty-state.small{padding:32px 16px}.empty-state-large{padding:64px 24px;text-align:center}.empty-state-large svg{color:#3b82f6;margin-bottom:24px}.empty-state-large h2{margin-bottom:12px}.empty-state-large p{color:#64748b;line-height:1.6;margin:0 auto 32px;max-width:400px}.features-row{display:flex;gap:32px;justify-content:center;margin-top:40px}.feature-item{gap:8px}.feature-item,.loading-state{align-items:center;color:#64748b;flex-direction:column}.loading-state{display:flex;gap:16px;justify-content:center;padding:64px}.progress-section{background:#fff;border-radius:14px;box-shadow:0 2px 8px #0000000f;margin-bottom:24px;padding:20px}.progress-header{color:#64748b;display:flex;font-size:14px;justify-content:space-between;margin-bottom:12px}.progress-percent{color:#3b82f6;font-weight:700}.progress-bar-large{background:#e2e8f0;border-radius:8px;height:16px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#3b82f6,#8b5cf6);border-radius:8px;height:100%;transition:width .5s}.progress-markers{color:#94a3b8;display:flex;font-size:13px;justify-content:space-between;margin-top:8px}.motivation-banner{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:14px;display:flex;gap:16px;margin-bottom:24px;padding:20px}.motivation-emoji{font-size:32px}.motivation-banner p{color:#92400e;font-weight:500;margin:0}.weight-chart{height:180px;position:relative}.chart-svg{height:100%;width:100%}.chart-y-labels{bottom:0;color:#94a3b8;font-size:11px;justify-content:space-between;position:absolute;right:0;top:0}.chart-y-labels,.entries-list{display:flex;flex-direction:column}.entry-row{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;gap:16px;padding:14px 0}.entry-row:last-child{border-bottom:none}.entry-date{align-items:center;color:#64748b;display:flex;font-size:14px;gap:8px;min-width:140px}.entry-weight{font-size:17px;font-weight:700;min-width:80px}.entry-diff{border-radius:20px;font-size:13px;font-weight:600;padding:4px 10px}.entry-diff.positive{background:#d1fae5;color:#059669}.entry-diff.negative{background:#fee2e2;color:#dc2626}.goal-preview-box{align-items:center;background:#eef2ff;border-radius:10px;color:#3b82f6;font-weight:500;margin-top:16px;padding:16px}.goal-preview-box,.header-btns{display:flex;gap:12px}.plan-header-banner{background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:16px;color:#fff;margin-bottom:24px;padding:24px}.plan-header-banner h2{margin:0 0 4px}.plan-header-banner span{font-size:14px;opacity:.8}.days-tabs{display:flex;gap:8px;margin-bottom:24px;overflow-x:auto;padding-bottom:4px}.day-tab{background:#fff;border:2px solid #e2e8f0;border-radius:10px;color:#64748b;cursor:pointer;flex:1 1;font-weight:600;min-width:60px;padding:12px 8px;transition:all .2s}.day-tab.active,.day-tab:hover{border-color:#3b82f6}.day-tab.active{background:#3b82f6;color:#fff}.day-content{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f;margin-bottom:24px;padding:24px}.day-title{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.day-title h3{margin:0}.day-cals{background:#f1f5f9;border-radius:20px;font-size:14px;font-weight:600;padding:6px 14px}.meals-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.meal-plan-card{background:#f8fafc;border-radius:12px;padding:16px}.meal-card-head{align-items:center;color:#64748b;display:flex;font-size:14px;gap:8px;margin-bottom:10px}.meal-cals{color:#f59e0b;font-weight:600;margin-left:auto}.meal-plan-card h4{font-size:15px;margin:0 0 6px}.meal-plan-card p{color:#64748b;font-size:13px;line-height:1.4;margin:0}.shopping-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.shopping-cat h4{color:#3b82f6;font-size:14px;margin-bottom:10px}.shopping-cat ul{list-style:none;margin:0;padding:0}.shopping-cat li{align-items:center;color:#475569;display:flex;font-size:14px;gap:8px;padding:6px 0}.shopping-cat li svg{color:#10b981;flex-shrink:0}.tips-banner{background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:16px;padding:24px}.tips-banner h3{align-items:center;display:flex;gap:8px;margin-bottom:16px}.tips-banner ul{list-style:none;margin:0;padding:0}.tips-banner li{padding:8px 0}.diet-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,1fr)}.diet-btn{align-items:center;background:#f8fafc;border:2px solid #0000;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;font-size:13px;gap:6px;padding:14px;transition:all .2s}.diet-btn.active,.diet-btn:hover{background:#eef2ff}.diet-btn.active{border-color:#3b82f6}.allergy-grid{display:flex;flex-wrap:wrap;gap:8px}.allergy-btn{align-items:center;background:#f8fafc;border:2px solid #e2e8f0;border-radius:20px;cursor:pointer;display:flex;font-size:13px;gap:6px;padding:8px 14px;transition:all .2s}.allergy-btn.active{background:#fef2f2;border-color:#fca5a5;color:#dc2626}.scanner-modes{display:flex;gap:12px;margin-bottom:24px}.mode-tab{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;display:flex;flex:1 1;font-weight:600;gap:10px;justify-content:center;padding:16px;transition:all .2s}.mode-tab.active,.mode-tab:hover{border-color:#3b82f6}.mode-tab.active{background:#3b82f6;color:#fff}.scanner-area{margin-bottom:24px}.upload-zone{align-items:center;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:16px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:64px 24px;transition:all .2s}.upload-zone:hover{background:#fff;border-color:#3b82f6}.upload-zone input{display:none}.upload-content{text-align:center}.upload-content svg{color:#3b82f6;margin-bottom:16px}.upload-content h3{color:#1e293b;margin-bottom:8px}.upload-content p{color:#94a3b8;margin:0}.preview-container{position:relative}.image-preview{background:#f8fafc;border-radius:16px;max-height:400px;object-fit:contain;width:100%}.remove-btn{background:#0009;border:none;border-radius:50%;height:40px;justify-content:center;right:12px;top:12px;width:40px}.analyze-floating-btn,.remove-btn{align-items:center;color:#fff;cursor:pointer;display:flex;position:absolute}.analyze-floating-btn{background:linear-gradient(135deg,#3b82f6,#8b5cf6);border:none;border-radius:30px;bottom:20px;box-shadow:0 8px 20px #3b82f666;font-weight:600;gap:10px;left:50%;padding:14px 32px;transform:translateX(-50%)}.analyzing-overlay{align-items:center;background:#fffffff2;border-radius:16px;display:flex;flex-direction:column;inset:0;justify-content:center;position:absolute}.analyzing-overlay p{color:#3b82f6;font-weight:600;margin-top:16px}.scan-result{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f;padding:24px}.result-top{display:flex;justify-content:space-between;margin-bottom:20px}.result-info h2{margin:0 0 6px}.result-info p{color:#64748b;margin:0}.health-score{background:#f8fafc;border:3px solid;border-radius:12px;padding:16px 20px;text-align:center}.score-num{font-size:32px;font-weight:700}.health-score span:last-child{color:#94a3b8;font-size:14px}.verdict-box{align-items:center;background:#f8fafc;border-left:4px solid;border-radius:0 12px 12px 0;display:flex;gap:16px;margin-bottom:20px;padding:16px}.verdict-emoji{font-size:32px}.verdict-box strong{display:block;margin-bottom:4px}.verdict-box p{color:#64748b;font-size:14px;margin:0}.nutrition-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr);margin-bottom:20px}.nutri-box{background:#f8fafc;border-radius:12px;padding:16px;text-align:center}.nutri-box svg{margin-bottom:8px}.nutri-box.orange{color:#f59e0b}.nutri-box.red{color:#ef4444}.nutri-box.blue{color:#3b82f6}.nutri-box.purple{color:#8b5cf6}.nutri-box span{color:#1e293b;display:block;font-size:20px;font-weight:700}.nutri-box small{color:#94a3b8;font-size:12px}.can-eat-box{align-items:center;border-radius:12px;display:flex;gap:16px;margin-bottom:16px;padding:16px}.can-eat-box.yes{background:#d1fae5;color:#065f46}.can-eat-box.no{background:#fee2e2;color:#991b1b}.can-eat-box strong{display:block;margin-bottom:2px}.can-eat-box p{font-size:14px;margin:0}.alternatives-box,.tips-box{background:#f8fafc;border-radius:12px;margin-bottom:16px;padding:16px}.alternatives-box h3,.tips-box h3{font-size:15px;margin-bottom:10px}.alternatives-box ul,.tips-box ul{list-style:none;margin:0;padding:0}.alternatives-box li,.tips-box li{align-items:center;display:flex;font-size:14px;gap:8px;padding:6px 0}.alternatives-box li svg{color:#10b981}.error-box{background:#fef2f2;border-radius:16px;padding:48px;text-align:center}.error-box p{color:#991b1b;margin-bottom:20px}.how-it-works{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f;padding:24px}.how-it-works h3{margin-bottom:24px;text-align:center}.steps{display:flex;justify-content:space-around}.step{text-align:center}.step-num{align-items:center;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:50%;color:#fff;display:flex;font-size:20px;font-weight:700;height:48px;justify-content:center;margin:0 auto 12px;width:48px}.step p{color:#64748b;font-size:14px;margin:0}.active-challenge{background:#fff;border:2px solid var(--challenge-color);border-radius:16px;box-shadow:0 2px 8px #0000000f;margin-bottom:24px;padding:24px}.challenge-top{gap:16px;margin-bottom:24px}.challenge-icon,.challenge-top{align-items:center;display:flex}.challenge-icon{border-radius:14px;color:#fff;flex-shrink:0;height:56px;justify-content:center;width:56px}.challenge-info{flex:1 1}.challenge-info h2{font-size:18px;margin:0 0 4px}.challenge-info p{color:#64748b;font-size:14px;margin:0}.challenge-pts{background:#f8fafc;border-radius:12px;padding:12px 20px;text-align:center}.challenge-pts span:first-child{color:var(--challenge-color);display:block;font-size:24px;font-weight:700}.challenge-pts span:last-child{color:#94a3b8;font-size:12px}.challenge-progress{margin-bottom:24px}.progress-info{color:#64748b;display:flex;font-size:14px;justify-content:space-between;margin-bottom:8px}.progress-bar{border-radius:5px;height:10px}.progress-bar div{border-radius:5px;transition:width .5s}.days-dots{display:flex;justify-content:space-between;margin-bottom:24px}.day-dot{align-items:center;color:#cbd5e1;display:flex;flex-direction:column;gap:6px}.day-dot.done{color:#10b981}.day-dot span{font-size:12px;font-weight:600}.validate-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;justify-content:center;padding:16px;transition:all .2s;width:100%}.validate-btn:hover:not(:disabled){box-shadow:0 4px 12px #3b82f666;transform:translateY(-1px)}.validate-btn.done{background:#10b981;cursor:default}.validate-btn:disabled{opacity:.9}.no-challenge{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f;margin-bottom:24px;padding:48px;text-align:center}.no-challenge svg{color:#3b82f6;margin-bottom:16px}.no-challenge h2{margin-bottom:8px}.no-challenge p{color:#64748b;margin-bottom:24px}.leaderboard{display:flex;flex-direction:column}.leader-row{align-items:center;border-radius:10px;display:flex;gap:16px;padding:12px;transition:background .2s}.leader-row:hover{background:#f8fafc}.leader-row.me{background:#eef2ff}.rank{font-size:18px;font-weight:700;text-align:center;width:32px}.name{align-items:center;display:flex;flex:1 1;font-weight:500;gap:8px}.you-tag{background:#3b82f6;border-radius:4px;color:#fff;font-size:10px;font-weight:600;padding:2px 6px}.points{color:#3b82f6;font-weight:700}.empty-text{padding:24px}.badges-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.badge-item{align-items:center;background:#f8fafc;border-radius:12px;display:flex;gap:12px;padding:16px}.badge-item.locked{opacity:.5}.badge-icon{align-items:center;background:#fff;border-radius:12px;display:flex;font-size:24px;height:48px;justify-content:center;width:48px}.badge-item.locked .badge-icon{color:#94a3b8}.badge-name{display:block;font-size:14px;font-weight:600}.badge-desc{color:#94a3b8;font-size:12px}.challenges-list{display:flex;flex-direction:column;gap:12px}.challenge-option{background:#f8fafc;gap:16px;padding:16px}.ch-icon,.challenge-option{align-items:center;border-radius:12px;display:flex}.ch-icon{color:#fff;flex-shrink:0;height:48px;justify-content:center;width:48px}.ch-info{flex:1 1}.ch-info h4,.ch-info p{margin:0 0 4px}.ch-info p{color:#64748b;font-size:13px}.ch-meta{color:#94a3b8;font-size:12px}.join-btn{background:linear-gradient(135deg,#3b82f6,#8b5cf6);border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px}@media (max-width:768px){.stats-grid-4{grid-template-columns:repeat(2,1fr)}.meals-grid,.stats-grid-3{grid-template-columns:1fr}.diet-grid,.meal-type-grid,.nutrition-inputs,.nutrition-row{grid-template-columns:repeat(2,1fr)}.form-row{grid-template-columns:1fr}.features-row{gap:20px}.features-row,.steps{flex-direction:column}.steps{gap:24px}.pro-gate-content{padding:32px 24px}}.pro-gate-page{align-items:center;background:linear-gradient(180deg,#f8fafc,#eef2ff);display:flex;justify-content:center;min-height:calc(100vh - 60px);padding:40px 24px}.pro-gate-card{background:#fff;border-radius:24px;box-shadow:0 25px 50px -12px #0000001f;max-width:480px;padding:48px;text-align:center;width:100%}.pro-gate-badge{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:30px;color:#92400e;display:inline-flex;font-size:13px;font-weight:600;gap:8px;margin-bottom:24px;padding:8px 16px}.pro-gate-emoji{font-size:64px;margin-bottom:20px}.pro-gate-card h1{color:#1e293b;font-size:28px;line-height:1.3;margin-bottom:12px}.pro-gate-desc{color:#64748b;font-size:16px;line-height:1.7;margin-bottom:32px}.pro-gate-benefits{margin-bottom:32px;padding:0 12px;text-align:left}.benefit-row{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;gap:14px;padding:12px 0}.benefit-row:last-child{border-bottom:none}.benefit-check{align-items:center;background:#d1fae5;border-radius:50%;color:#059669;display:flex;flex-shrink:0;height:28px;justify-content:center;width:28px}.benefit-row span{color:#334155;font-size:15px}.pro-gate-cta-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border:none;border-radius:14px;box-shadow:0 8px 20px #3b82f659;color:#fff;cursor:pointer;display:flex;font-size:17px;font-weight:600;gap:12px;justify-content:center;padding:18px 24px;text-decoration:none;transition:all .3s;width:100%}.pro-gate-cta-btn:hover{box-shadow:0 12px 28px #3b82f673;transform:translateY(-2px)}.pro-gate-price-info{margin-top:20px}.price-tag{color:#64748b;display:block;font-size:15px;margin-bottom:4px}.price-tag strong{color:#1e293b}.cancel-info{color:#94a3b8;display:block;font-size:13px}.pro-gate-trust{align-items:center;border-top:1px solid #f1f5f9;color:#94a3b8;display:flex;font-size:13px;gap:8px;justify-content:center;margin-top:24px;padding-top:24px}.pro-gate-trust svg{color:#f59e0b}.page-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.page-header h1{color:#1e293b;font-size:28px;margin-bottom:4px}.page-header p{color:#64748b;font-size:15px}.challenges-page,.journal-page,.mealplan-page,.scanner-page,.weight-page{margin:0 auto;max-width:1000px;padding:32px}@media (max-width:768px){.challenges-page,.journal-page,.mealplan-page,.scanner-page,.weight-page{padding:20px}.page-header{flex-direction:column;gap:16px}.page-header h1{font-size:24px}.pro-gate-card{padding:32px 24px}.pro-gate-card h1{font-size:24px}.stats-grid-3,.stats-grid-4{grid-template-columns:1fr 1fr}}.profile-page{background:linear-gradient(180deg,#f8fafc,#eef2ff);min-height:100vh;padding:24px}.profile-container{margin:0 auto;max-width:700px}.profile-locked-card{background:#fff;border-radius:20px;box-shadow:0 10px 40px #0000001a;margin:60px auto;max-width:450px;padding:48px;text-align:center}.locked-emoji{margin-bottom:20px}.profile-locked-card h2{margin-bottom:12px}.profile-locked-card p{color:#64748b;margin-bottom:24px}.locked-benefits{color:#64748b;font-size:14px;margin-top:24px}.profile-header-card{background:#fff;border-radius:20px;box-shadow:0 4px 20px #0000000f;margin-bottom:20px;padding:32px;text-align:center}.profile-avatar{align-items:center;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:50%;color:#fff;display:flex;font-size:32px;font-weight:700;height:80px;justify-content:center;margin:0 auto 16px;width:80px}.profile-header-card h1{font-size:24px;margin-bottom:4px}.profile-email{color:#94a3b8;font-size:14px;margin-bottom:16px}.goal-badge{align-items:center;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-radius:20px;color:#fff;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px}.profile-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr);margin-bottom:20px}.profile-stat{background:#fff;border-radius:16px;box-shadow:0 2px 10px #0000000a;padding:20px 16px;text-align:center}.profile-stat svg{color:#3b82f6;margin-bottom:8px}.profile-stat .stat-value{color:#1e293b;font-size:24px;font-weight:700}.profile-stat .stat-unit{color:#94a3b8;font-size:14px;margin-left:2px}.profile-stat .stat-label{color:#64748b;display:block;font-size:12px;margin-top:4px}.profile-stat.highlight{background:linear-gradient(135deg,#3b82f6,#8b5cf6)}.profile-stat.highlight .stat-label,.profile-stat.highlight .stat-unit,.profile-stat.highlight .stat-value,.profile-stat.highlight svg{color:#fff}.profile-form-card{background:#fff;border-radius:20px;box-shadow:0 4px 20px #0000000f;margin-bottom:20px;padding:24px}.form-card-header{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.form-card-header h2{font-size:18px;margin:0}.edit-btn,.save-btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:10px 18px;transition:all .2s}.edit-btn{background:#f1f5f9;color:#475569}.edit-btn:hover{background:#e2e8f0}.save-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.save-btn:hover{box-shadow:0 4px 12px #10b98166;transform:translateY(-1px)}.profile-form{display:flex;flex-direction:column;gap:20px}.profile-form .form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.profile-form .form-group{margin-bottom:0}.profile-form .form-group.full-width{grid-column:1/-1}.profile-form label{align-items:center;color:#475569;display:flex;font-size:14px;font-weight:500;gap:6px;margin-bottom:8px}.profile-form input,.profile-form select{background:#fff;border:2px solid #e2e8f0;border-radius:12px;font-size:15px;padding:14px 16px;transition:all .2s;width:100%}.profile-form input:disabled,.profile-form select:disabled{background:#f8fafc;color:#64748b;cursor:not-allowed}.profile-form input:focus:not(:disabled),.profile-form select:focus:not(:disabled){border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.goals-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(5,1fr)}.goal-option{align-items:center;background:#f8fafc;border:2px solid #0000;border-radius:12px;color:#64748b;cursor:pointer;display:flex;flex-direction:column;font-size:12px;gap:6px;padding:16px 8px;transition:all .2s}.goal-option:disabled{cursor:not-allowed;opacity:.7}.goal-option:not(:disabled):hover{background:#eef2ff;border-color:#c7d2fe}.goal-option.active{background:#eef2ff;border-color:#3b82f6;color:#3b82f6}.goal-emoji{font-size:24px}.calories-info-card{background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:20px;padding:24px;text-align:center}.calories-info-card h3{margin-bottom:8px}.calories-info-card p{color:#92400e;font-size:14px}.calories-value{color:#92400e;font-size:48px;font-weight:700;margin:16px 0}.calories-value span{font-size:18px;font-weight:500}.calories-note{font-size:12px;opacity:.8}.referral-card{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-radius:20px;margin-bottom:20px;padding:24px}.referral-header{align-items:flex-start;display:flex;gap:16px;margin-bottom:24px}.referral-header svg{color:#1e40af;flex-shrink:0}.referral-header h2{color:#1e40af;font-size:18px;margin:0 0 6px}.referral-header p{color:#3b82f6;font-size:14px;margin:0}.referral-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-bottom:24px}.referral-stat{align-items:center;background:#fff;border-radius:12px;display:flex;flex-direction:column;gap:6px;padding:16px;text-align:center}.referral-stat svg{color:#3b82f6}.referral-stat.highlight{background:#1e40af}.referral-stat.highlight .stat-number,.referral-stat.highlight .stat-text,.referral-stat.highlight svg{color:#fff}.referral-stat .stat-number{color:#1e293b;font-size:24px;font-weight:700}.referral-stat .stat-text{color:#64748b;font-size:11px}.referral-invite{margin-bottom:20px}.invite-input-group{align-items:center;background:#fff;border-radius:12px;display:flex;gap:12px;padding:4px 4px 4px 16px}.invite-input-group svg{color:#94a3b8;flex-shrink:0}.invite-input-group input{background:#0000;border:none;flex:1 1;font-size:15px;outline:none;padding:12px 0}.invite-input-group button{align-items:center;background:#1e40af;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;justify-content:center;padding:12px 16px}.invite-input-group button:hover{background:#1e3a8a}.invite-message{font-size:13px;margin-top:10px;text-align:center}.invite-message.success{color:#166534}.invite-message.error{color:#dc2626}.referral-link{background:#ffffff80;border-radius:12px;padding:16px}.referral-link>span{color:#1e40af;display:block;font-size:13px;margin-bottom:8px}.link-copy{display:flex;gap:8px}.link-copy input{background:#fff;border:1px solid #bfdbfe;border-radius:8px;color:#64748b;flex:1 1;font-size:13px;padding:10px 12px}.link-copy button{align-items:center;background:#1e40af;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:10px 16px}.link-copy button:hover{background:#1e3a8a}.email-change-form{margin-top:16px}.form-desc{color:#64748b;color:var(--text-secondary);font-size:14px;margin-bottom:16px}.input-group-inline{display:flex;gap:12px}.input-group-inline input{border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;flex:1 1;font-size:15px;padding:12px 16px}.input-group-inline button{background:#0061ff;background:var(--primary);border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;white-space:nowrap}.input-group-inline button:hover{background:#0052d9;background:var(--primary-hover)}.form-message{font-size:13px;margin-top:12px}.form-message.success{color:#166534}.form-message.error{color:#dc2626}.form-note{color:var(--text-muted);font-size:12px;margin-top:12px}@media (max-width:480px){.profile-stats{gap:8px;grid-template-columns:1fr 1fr}.profile-stat{padding:14px 10px}.profile-stat .stat-value{font-size:20px}.goals-grid{grid-template-columns:repeat(2,1fr)}.form-row{grid-template-columns:1fr!important}.primary-btn,.secondary-btn{font-size:14px;padding:12px 16px}.modal-footer{flex-direction:column}.modal-footer button{width:100%}}@media (max-width:768px){.upgrade-modal{margin:16px;max-height:90vh;max-width:95vw;overflow-y:auto}.upgrade-header{padding:20px 16px}.upgrade-header h2{font-size:20px}.upgrade-header p{font-size:13px}.upgrade-content{padding:16px}.trial-banner{margin-bottom:16px;padding:12px}.trial-banner .trial-icon{font-size:28px}.trial-banner h3{font-size:14px}.trial-banner p{font-size:12px}.benefits-list{margin-bottom:16px}.benefit-item{font-size:13px;padding:6px 0}.pricing-cards{gap:8px;margin-bottom:16px}.pricing-card{padding:14px 10px}.pricing-amount{font-size:22px}.pricing-amount span{font-size:12px}.pricing-period{font-size:11px}.pricing-yearly-note{font-size:10px}.pricing-card.popular:before{font-size:9px;padding:3px 8px}.upgrade-cta{font-size:14px;padding:14px}.upgrade-footer{font-size:11px;padding:12px}}@media (max-width:400px){.upgrade-modal{border-radius:16px;margin:8px;max-width:100vw}.upgrade-header{padding:16px 12px}.upgrade-header h2{font-size:18px}.upgrade-content{padding:12px}.pricing-cards{gap:10px;grid-template-columns:1fr}.pricing-card{padding:16px}.pricing-amount{font-size:26px}}@media (max-width:768px){.auth-modal{margin:16px;max-width:95vw}.auth-modal-header{padding:20px 16px}.auth-modal-header h2{font-size:20px}.auth-modal-body{padding:16px}.auth-input{font-size:15px;padding:12px 14px}.auth-submit-btn{font-size:14px;padding:14px}.modal-overlay{align-items:flex-start;padding:5vh 16px 16px}.sidebar-overlay{z-index:998}.sidebar-wrapper.open{z-index:999}.message-bubble{font-size:14px;max-width:85%;padding:12px 14px}.chat-input-area{padding:12px}.chat-input{font-size:15px;padding:12px 14px}.quick-actions{flex-wrap:wrap;gap:6px}.quick-action-btn{font-size:12px;padding:8px 12px}.stats-grid-4{grid-template-columns:repeat(2,1fr)}.stats-grid-3{grid-template-columns:1fr}.stat-card{padding:14px}.stat-card .stat-value{font-size:22px}.recipe-card{padding:14px}.recipe-title{font-size:15px}.tip-card{padding:14px}.tip-title{font-size:15px}}.admin-page{background:linear-gradient(180deg,#f8fafc,#f1f5f9);padding:24px}.admin-denied{align-items:center;color:#64748b;display:flex;flex-direction:column;justify-content:center;min-height:60vh;text-align:center}.admin-denied svg{color:#ef4444;margin-bottom:20px}.admin-denied h1{color:#1e293b;font-size:24px;margin-bottom:8px}.admin-header{flex-wrap:wrap;gap:16px;margin-bottom:24px}.admin-title h1{font-size:26px}.admin-badge{animation:pulse 2s infinite;background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:20px;color:#fff;font-size:12px;font-weight:600;padding:4px 12px}.admin-actions{align-items:center;display:flex;gap:16px}.auto-refresh-toggle{align-items:center;color:#64748b;cursor:pointer;display:flex;font-size:13px;gap:8px}.auto-refresh-toggle input{cursor:pointer;height:16px;width:16px}.refresh-btn{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:8px;padding:8px 16px;transition:all .2s}.refresh-btn:hover{background:#f8fafc;border-color:#cbd5e1}.refresh-btn svg.spin{animation:spin 1s linear infinite}.last-refresh{color:#94a3b8;font-size:12px}.admin-stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr);margin-bottom:24px}.admin-stat-card{align-items:center;background:#fff;border-radius:16px;box-shadow:0 1px 3px #00000014;display:flex;gap:16px;padding:20px;position:relative}.admin-stat-card.live{background:linear-gradient(135deg,#dcfce7,#bbf7d0);border:1px solid #86efac}.live-dot{animation:pulse 1.5s infinite;background:#22c55e;border-radius:50%;height:10px;position:absolute;right:12px;top:12px;width:10px}.stat-icon{align-items:center;background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:12px;color:#fff;display:flex;height:48px;justify-content:center;width:48px}.stat-icon.blue{background:linear-gradient(135deg,#3b82f6,#2563eb)}.stat-icon.purple{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.stat-icon.green{background:linear-gradient(135deg,#10b981,#059669)}.stat-content{display:flex;flex-direction:column}.admin-stat-card .stat-value{color:#1e293b;font-size:28px;font-weight:700}.admin-stat-card .stat-label{color:#64748b;font-size:13px}.admin-grid{grid-gap:20px;gap:20px;margin-bottom:24px}.admin-card{box-shadow:0 1px 3px #00000014}.admin-card.chart-card,.admin-card.full-width{grid-column:1/-1}.card-header{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;gap:10px;margin-bottom:16px;padding-bottom:12px}.card-header svg{color:#6366f1}.card-header h2{color:#1e293b;font-size:16px;font-weight:600}.daily-chart{align-items:flex-end;display:flex;gap:12px;height:180px;padding:10px 0}.chart-bar-container{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:8px}.chart-bar-wrapper{align-items:flex-end;display:flex;flex:1 1;justify-content:center;width:100%}.chart-bar{align-items:flex-start;border-radius:8px 8px 4px 4px;max-width:50px;min-height:20px;padding-top:8px}.bar-value{color:#fff;font-size:11px;font-weight:600}.bar-label{color:#475569;font-size:11px;font-weight:500}.bar-visitors{color:#94a3b8;font-size:10px}.top-pages-list{display:flex;flex-direction:column;gap:10px}.top-page-item{background:#f8fafc;gap:12px;padding:10px}.page-rank,.top-page-item{align-items:center;border-radius:8px;display:flex}.page-rank{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;font-size:12px;font-weight:600;height:28px;justify-content:center;width:28px}.page-name{color:#1e293b;flex:1 1;font-size:14px;font-weight:500}.page-count{color:#64748b;font-size:13px;font-weight:500}.devices-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.device-stat{align-items:center;background:#f8fafc;border-radius:12px;display:flex;flex-direction:column;gap:8px;padding:16px}.device-stat svg{color:#6366f1}.browsers-list{display:flex;flex-direction:column;gap:12px}.browser-item{align-items:center;display:flex;gap:12px}.browser-name{color:#475569;font-size:13px;font-weight:500;width:70px}.browser-bar{background:#e2e8f0;border-radius:4px;flex:1 1;height:8px;overflow:hidden}.browser-fill{background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:4px;height:100%;transition:width .5s ease}.browser-count{color:#64748b;font-size:13px;font-weight:500;text-align:right;width:40px}.visits-table{overflow-x:auto}.table-header,.table-row{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:80px 1fr 60px 120px 60px;padding:12px}.table-header{background:#f8fafc;border-radius:8px;color:#64748b;font-size:12px;font-weight:600;text-transform:uppercase}.table-row{border-bottom:1px solid #f1f5f9;color:#475569;font-size:13px}.table-row:last-child{border-bottom:none}.visit-time{color:#1e293b}.visit-screen{color:#94a3b8;font-size:12px}.visit-user .logged-in{color:#22c55e}.nav-item.admin-nav{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fbbf24}.nav-item.admin-nav.active{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff}.nav-admin-badge{font-size:12px}@media (max-width:1024px){.admin-stats-grid{grid-template-columns:repeat(2,1fr)}.admin-grid{grid-template-columns:1fr}}@media (max-width:768px){.admin-page{padding:16px}.admin-header{align-items:flex-start;flex-direction:column}.admin-actions{justify-content:space-between;width:100%}.admin-stats-grid{gap:12px;grid-template-columns:1fr 1fr}.admin-stat-card{padding:14px}.admin-stat-card .stat-value{font-size:22px}.stat-icon{height:40px;width:40px}.daily-chart{gap:8px;height:140px}.devices-grid{gap:8px;grid-template-columns:1fr}.device-stat{flex-direction:row;justify-content:space-between}.table-header,.table-row{grid-template-columns:60px 1fr 50px}.table-header span:nth-child(4),.table-header span:nth-child(5),.table-row .visit-screen,.table-row .visit-user{display:none}}.admin-page{background:#f1f5f9;min-height:100vh;padding:20px}.admin-loading{align-items:center;color:#64748b;display:flex;font-size:18px;justify-content:center;min-height:50vh}.admin-login-card{background:#fff;border-radius:20px;box-shadow:0 10px 40px #0000001a;margin:60px auto;max-width:380px;padding:40px;text-align:center}.admin-login-icon{color:#6366f1;margin-bottom:16px}.admin-login-card h1{color:#1e293b;font-size:24px;margin-bottom:8px}.admin-login-card p{color:#64748b;margin-bottom:24px}.admin-login-form{display:flex;flex-direction:column;gap:12px}.admin-login-form input{border:1px solid #e2e8f0;border-radius:10px;font-size:15px;padding:14px 16px}.admin-login-form input:focus{border-color:#6366f1;outline:none}.admin-login-form button{align-items:center;background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:8px;justify-content:center;padding:14px}.admin-login-form button:disabled{opacity:.7}.admin-error{background:#fef2f2;border-radius:8px;color:#dc2626;font-size:13px;padding:10px}.admin-header{justify-content:space-between;margin-bottom:20px}.admin-header,.admin-title{align-items:center;display:flex}.admin-title{gap:12px}.admin-title svg{color:#6366f1}.admin-title h1{color:#1e293b;font-size:24px;font-weight:700}.admin-live-badge{animation:pulse 2s infinite;background:#dcfce7;border-radius:20px;color:#16a34a;font-size:12px;font-weight:600;padding:4px 12px}.admin-refresh{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;color:#475569;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 16px}.admin-refresh:hover{background:#f8fafc}.admin-stats-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr);margin-bottom:20px}.admin-stat{align-items:center;background:#fff;border-radius:16px;box-shadow:0 1px 3px #0000000d;display:flex;gap:16px;padding:20px}.admin-stat.live{background:linear-gradient(135deg,#dcfce7,#bbf7d0);border:1px solid #86efac}.admin-stat svg{background:#f1f5f9;border-radius:12px;color:#6366f1;height:44px;padding:10px;width:44px}.admin-stat.live svg{background:#22c55e;color:#fff}.stat-info{display:flex;flex-direction:column}.stat-number{color:#1e293b;font-size:28px;font-weight:700}.stat-label{color:#64748b;font-size:13px}.admin-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.admin-card{background:#fff;border-radius:16px;box-shadow:0 1px 3px #0000000d;padding:20px}.admin-card.wide{grid-column:1/-1}.admin-card h3{color:#1e293b;font-size:15px;font-weight:600;margin-bottom:16px}.admin-chart{align-items:flex-end;display:flex;gap:8px;height:150px}.chart-col{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:8px}.chart-bar-wrap{align-items:flex-end;flex:1 1}.chart-bar,.chart-bar-wrap{display:flex;justify-content:center;width:100%}.chart-bar{background:linear-gradient(180deg,#6366f1,#4f46e5);border-radius:6px 6px 2px 2px;max-width:40px;min-height:8px;padding-top:6px}.chart-bar span{color:#fff;font-size:10px;font-weight:600}.chart-label{color:#64748b;font-size:11px}.admin-list{display:flex;flex-direction:column;gap:8px}.list-item{background:#f8fafc;border-radius:8px;gap:10px;padding:10px}.list-item,.list-rank{align-items:center;display:flex}.list-rank{background:#6366f1;border-radius:6px;color:#fff;font-size:11px;font-weight:600;height:24px;justify-content:center;width:24px}.list-name{color:#1e293b;flex:1 1;font-size:13px;font-weight:500}.list-count{color:#6366f1;font-size:13px;font-weight:600}.progress-bar{background:#e2e8f0;border-radius:3px;flex:1 1;height:6px;overflow:hidden}.progress-bar div{background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:3px;height:100%}.devices-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.device-item{align-items:center;background:#f8fafc;border-radius:12px;display:flex;flex-direction:column;gap:8px;padding:16px}.device-item svg{color:#6366f1}.device-count{color:#1e293b;font-size:24px;font-weight:700}.device-label{color:#64748b;font-size:12px}.visits-list{display:flex;flex-direction:column;gap:4px;max-height:300px;overflow-y:auto}.visit-row{grid-template-columns:60px 1fr 40px 80px}.visit-row:nth-child(odd){background:#f8fafc}.visit-time{color:#475569;font-weight:500}.visit-page{color:#6366f1;font-weight:500}.visit-device{text-align:center}.visit-browser{color:#94a3b8;font-size:12px}@media (max-width:1024px){.admin-stats-row{grid-template-columns:repeat(2,1fr)}.admin-grid{grid-template-columns:1fr}}@media (max-width:640px){.admin-page{padding:16px}.admin-header{align-items:flex-start;flex-direction:column;gap:12px}.admin-stats-row{gap:10px;grid-template-columns:1fr 1fr}.admin-stat{padding:14px}.stat-number{font-size:22px}.devices-row{grid-template-columns:1fr}.device-item{flex-direction:row;justify-content:space-between}.visit-row{grid-template-columns:50px 1fr 30px}.visit-browser{display:none}}.usage-badge{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:20px;color:#92400e;display:inline-flex;font-size:12px;font-weight:600;gap:6px;margin-top:6px;padding:4px 10px}.usage-badge svg{color:#dc2626;height:12px;width:12px}.locked-feature-card{background:#fff;border-radius:24px;box-shadow:0 10px 40px #0000001a;margin:40px auto;max-width:500px;padding:48px 32px;text-align:center}.locked-emoji{font-size:64px;margin-bottom:16px}.locked-feature-card h1{color:#1e293b;font-size:28px;font-weight:700;margin-bottom:12px}.locked-feature-card p{color:#64748b;font-size:15px;line-height:1.6;margin-bottom:24px}.locked-benefits{background:#f0fdf4;gap:8px;padding:16px 24px}.locked-benefits div{color:#166534;font-size:14px;font-weight:500}.locked-feature-card .primary-btn{font-size:15px;padding:14px 28px}@media (max-width:640px){.locked-feature-card{margin:20px 16px;padding:32px 20px}.locked-emoji{font-size:48px}.locked-feature-card h1{font-size:22px}}.empty-text{color:#94a3b8;font-size:13px;padding:20px;text-align:center}.visit-country{color:#64748b;font-size:12px;min-width:80px}.visit-source{color:#6366f1;font-size:12px;min-width:100px}.visit-row{grid-gap:12px;align-items:center;border-radius:8px;display:grid;font-size:13px;gap:12px;grid-template-columns:60px 1fr 80px 100px 40px;padding:10px}@media (max-width:768px){.visit-row{grid-template-columns:50px 1fr 30px}.visit-country,.visit-source{display:none}}.benefit-highlight{background:linear-gradient(135deg,#dcfce7,#bbf7d0);border-radius:10px;color:#166534;font-size:15px;margin-bottom:8px;padding:10px 16px;text-align:center}.locked-subtext{color:#94a3b8;font-size:12px;margin-top:12px}.locked-benefits{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;gap:10px;margin-bottom:24px;padding:16px 20px;text-align:left}.locked-benefits div:not(.benefit-highlight){color:#475569;font-size:14px}.ebook-popup-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.ebook-popup{animation:slideUp .4s ease;background:#fff;border-radius:24px;box-shadow:0 25px 50px -12px #00000040;max-width:400px;padding:32px 28px;position:relative;text-align:center;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.ebook-close{align-items:center;background:#f1f5f9;border:none;border-radius:50%;color:#64748b;cursor:pointer;display:flex;height:36px;justify-content:center;position:absolute;right:16px;top:16px;transition:all .2s;width:36px}.ebook-close:hover{background:#e2e8f0;color:#1e293b}.ebook-gift-icon{align-items:center;animation:bounce 2s infinite;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:50%;color:#f59e0b;display:flex;height:64px;justify-content:center;margin:0 auto 16px;width:64px}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.ebook-popup h2{color:#1e293b;font-size:24px;font-weight:700;margin-bottom:20px}.ebook-preview{align-items:center;background:linear-gradient(135deg,#3b82f6,#6366f1);border-radius:16px;color:#fff;display:flex;flex-direction:column;gap:8px;margin-bottom:20px;padding:24px}.ebook-preview span{font-size:12px;font-weight:700;letter-spacing:2px;opacity:.9}.ebook-popup h3{color:#1e293b;font-size:18px;font-weight:700;margin-bottom:8px}.ebook-popup>p{color:#64748b;font-size:14px;margin-bottom:16px}.ebook-benefits{list-style:none;margin:0 0 24px;padding:0;text-align:left}.ebook-benefits li{border-bottom:1px solid #f1f5f9;color:#475569;font-size:14px;padding:8px 0}.ebook-benefits li:last-child{border-bottom:none}.ebook-cta{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:14px;box-shadow:0 4px 14px #10b98166;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;justify-content:center;padding:16px 24px;transition:all .3s;width:100%}.ebook-cta:hover{box-shadow:0 6px 20px #10b98180;transform:translateY(-2px)}.ebook-footer{color:#94a3b8;font-size:12px;margin-top:12px}@media (max-width:480px){.ebook-popup{margin:10px;padding:24px 20px}.ebook-popup h2{font-size:20px}.ebook-preview{padding:20px}}.mentions-legales-page{background:#f8fafc;min-height:100vh;padding:20px}.mentions-container{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f;margin:0 auto;max-width:800px;padding:32px}.mentions-container .back-btn{align-items:center;background:#f1f5f9;border:none;border-radius:8px;color:#475569;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:24px;padding:10px 16px;transition:all .2s}.mentions-container .back-btn:hover{background:#e2e8f0;color:#1e293b}.mentions-container h1{color:#1e293b;font-size:32px;font-weight:800;margin-bottom:8px}.mentions-container .last-update{color:#64748b;font-size:14px;margin-bottom:32px}.mentions-container section{margin-bottom:32px}.mentions-container h2{border-bottom:2px solid #e2e8f0;color:#1e293b;font-size:20px;font-weight:700;margin-bottom:12px;padding-bottom:8px}.mentions-container p{color:#475569;font-size:15px;line-height:1.7;margin-bottom:12px}.mentions-container .info-block{background:#f8fafc;border-radius:12px;margin:12px 0;padding:20px}.mentions-container .info-block p{margin-bottom:6px}.mentions-container .info-block p:last-child{margin-bottom:0}@media (max-width:640px){.mentions-legales-page{padding:12px}.mentions-container{border-radius:12px;padding:20px}.mentions-container h1{font-size:24px}.mentions-container h2{font-size:18px}}.legal-nav{border-top:1px solid #e2e8f0;margin-top:48px;padding-top:32px;text-align:center}.legal-nav>p{color:#64748b;font-size:14px;margin-bottom:12px}.legal-links{display:flex;flex-wrap:wrap;gap:24px;justify-content:center}.legal-links a{color:#3b82f6;font-size:15px;font-weight:500;text-decoration:none}.legal-links a:hover{text-decoration:underline}.newsletter-toggle{align-items:flex-start;background:#f8fafc;border-radius:12px;display:flex;gap:14px;padding:16px}.toggle-switch{display:inline-block;flex-shrink:0;height:28px;position:relative;width:52px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#cbd5e1;border-radius:28px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;box-shadow:0 2px 4px #0000001a;content:"";height:22px;left:3px;position:absolute;transition:.3s;width:22px}.toggle-switch input:checked+.toggle-slider{background-color:#3b82f6}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(24px)}.toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.6}.toggle-text{display:flex;flex-direction:column;gap:2px}.toggle-text .toggle-label{color:#1e293b;font-size:15px;font-weight:600}.toggle-text .toggle-desc{color:#64748b;font-size:13px}.onboarding-quiz{background:linear-gradient(180deg,#f8fafc,#eef2f7);display:flex;flex-direction:column;min-height:100vh}.quiz-progress-bar{background:#e2e8f0;height:4px;left:0;position:fixed;right:0;top:0;z-index:100}.quiz-progress-bar .progress-fill{background:linear-gradient(90deg,#3b82f6,#1e40af);height:100%;transition:width .4s ease}.quiz-top{justify-content:space-between;padding:24px 20px 16px}.quiz-back-btn,.quiz-top{align-items:center;display:flex}.quiz-back-btn{background:none;border:none;border-radius:50%;color:#64748b;cursor:pointer;justify-content:center;padding:8px}.quiz-back-btn:hover{background:#e2e8f0;color:#1e293b}.quiz-counter{color:#64748b;font-size:14px;font-weight:500}.quiz-skip-btn{background:none;border:none;color:#94a3b8;cursor:pointer;font-size:14px;padding:8px 12px}.quiz-skip-btn:hover{color:#64748b}.quiz-body{flex:1 1;margin:0 auto;max-width:480px;padding:20px;width:100%}.quiz-body h1{color:#1e293b;font-size:26px;font-weight:700;line-height:1.3;margin:0 0 12px}.quiz-subtitle{color:#64748b;font-size:15px;line-height:1.5;margin:0 0 32px}.quiz-options{display:flex;flex-direction:column;gap:12px}.quiz-option{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:16px;cursor:pointer;display:flex;gap:16px;padding:18px 20px;text-align:left;transition:all .2s ease}.quiz-option:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f61f;transform:translateY(-2px)}.quiz-option.selected{background:#eff6ff;border-color:#3b82f6}.quiz-option .option-emoji{flex-shrink:0;font-size:28px;text-align:center;width:44px}.quiz-option .option-content{display:flex;flex:1 1;flex-direction:column;gap:2px}.quiz-option .option-label{color:#1e293b;font-size:16px;font-weight:600}.quiz-option .option-desc{color:#64748b;font-size:13px}.quiz-option .option-arrow{color:#cbd5e1;flex-shrink:0;transition:transform .2s}.quiz-option:hover .option-arrow{color:#3b82f6;transform:translateX(4px)}.quiz-final{flex:1 1;margin:0 auto;max-width:480px;padding:40px 20px 20px;width:100%}.final-header{margin-bottom:32px;text-align:center}.final-emoji{display:block;font-size:56px;margin-bottom:16px}.final-header h1{color:#1e293b;font-size:26px;font-weight:700;margin:0 0 8px}.final-header p{color:#64748b;font-size:15px;margin:0}.final-stats{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000a;gap:20px;margin-bottom:24px;padding:20px}.final-stats,.stat-circle{align-items:center;display:flex}.stat-circle{background:linear-gradient(135deg,#3b82f6,#1e40af);border-radius:50%;flex-shrink:0;height:72px;justify-content:center;width:72px}.stat-circle .stat-value{color:#fff;font-size:22px;font-weight:700}.final-stats p{color:#475569;font-size:14px;line-height:1.5;margin:0}.final-plan{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000a;margin-bottom:32px;padding:24px}.final-plan h3{color:#1e293b;font-size:15px;font-weight:600;margin:0 0 16px}.plan-item{align-items:center;border-bottom:1px solid #f1f5f9;color:#475569;display:flex;font-size:14px;gap:12px;padding:10px 0}.plan-item:last-child{border-bottom:none;padding-bottom:0}.plan-icon{font-size:18px;text-align:center;width:28px}.final-form{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000a;padding:24px}.final-form h3{color:#1e293b;font-size:18px;font-weight:600;margin:0 0 20px;text-align:center}.form-field{margin-bottom:14px}.form-field input{border:2px solid #e2e8f0;border-radius:12px;font-size:16px;padding:14px 16px;transition:border-color .2s;width:100%}.form-field input:focus{border-color:#3b82f6;outline:none}.form-field input::placeholder{color:#94a3b8}.form-error{background:#fef2f2;border-radius:10px;color:#dc2626;font-size:14px;margin-bottom:16px;padding:12px 16px}.final-submit{align-items:center;background:linear-gradient(135deg,#3b82f6,#1e40af);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:17px;font-weight:600;gap:8px;justify-content:center;margin-top:8px;padding:16px;transition:all .2s;width:100%}.final-submit:hover:not(:disabled){box-shadow:0 8px 20px #3b82f659;transform:translateY(-2px)}.final-submit:disabled{cursor:not-allowed;opacity:.7}.form-note{color:#94a3b8;font-size:13px;margin-top:16px;text-align:center}.notification-center{position:relative}.notification-bell{align-items:center;background:none;border:none;border-radius:10px;color:#64748b;cursor:pointer;display:flex;justify-content:center;padding:10px;position:relative;transition:all .2s}.notification-bell:hover{background:#f1f5f9;color:#1e293b}.notification-badge{align-items:center;background:#ef4444;border-radius:9px;color:#fff;display:flex;font-size:11px;font-weight:600;height:18px;justify-content:center;min-width:18px;padding:0 4px;position:absolute;right:4px;top:4px}.notification-dropdown{animation:dropdownFade .2s ease;background:#fff;border-radius:16px;box-shadow:0 10px 40px #00000026;max-height:440px;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);width:340px;z-index:1000}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.notification-header{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:16px 20px}.notification-header h3{color:#1e293b;font-size:16px;font-weight:600;margin:0}.notification-header button{background:none;border:none;color:#3b82f6;cursor:pointer;font-size:13px;font-weight:500}.notification-header button:hover{text-decoration:underline}.notification-list{max-height:360px;overflow-y:auto}.notification-item{cursor:pointer;display:flex;gap:14px;padding:16px 20px;position:relative;transition:background .2s}.notification-item:hover{background:#f8fafc}.notification-item.unread{background:#eff6ff}.notification-item.unread:hover{background:#dbeafe}.notification-icon{align-items:center;background:#f1f5f9;border-radius:12px;display:flex;flex-shrink:0;font-size:20px;height:40px;justify-content:center;width:40px}.notification-icon.tip{background:#ecfdf5;color:#10b981}.notification-icon.achievement{background:#fef3c7;color:#f59e0b}.notification-icon.message{background:#eff6ff;color:#3b82f6}.notification-icon.reminder{background:#fae8ff;color:#d946ef}.notification-content{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.notification-title{color:#1e293b;font-size:14px;font-weight:600}.notification-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#64748b;display:-webkit-box;font-size:13px;line-height:1.4;overflow:hidden}.notification-time{color:#94a3b8;font-size:11px;margin-top:4px}.notification-delete{background:none;border:none;border-radius:6px;color:#cbd5e1;cursor:pointer;opacity:0;padding:4px;position:absolute;right:12px;top:12px;transition:all .2s}.notification-item:hover .notification-delete{opacity:1}.notification-delete:hover{background:#fee2e2;color:#ef4444}.notification-empty{color:#94a3b8;padding:48px 20px;text-align:center}.notification-empty svg{margin-bottom:12px;opacity:.4}.notification-empty p{font-size:14px;margin:0}@media (max-width:600px){.quiz-body h1{font-size:22px}.quiz-option{padding:16px}.quiz-option .option-emoji{font-size:24px;width:36px}.quiz-option .option-label{font-size:15px}.final-header h1{font-size:22px}.final-stats{flex-direction:column}.final-stats,.final-stats p{text-align:center}.notification-dropdown{right:-10px;width:calc(100vw - 20px)}}.auth-toast{align-items:center;animation:toastSlide .3s ease;border-radius:12px;box-shadow:0 4px 20px #00000026;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;left:50%;max-width:90%;padding:14px 20px;position:fixed;top:20px;transform:translateX(-50%);z-index:10000}@keyframes toastSlide{0%{opacity:0;transform:translateX(-50%) translateY(-20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.auth-toast.success{background:#10b981;color:#fff}.auth-toast.error{background:#ef4444;color:#fff}.auth-toast.info{background:#3b82f6;color:#fff}.auth-toast button{background:none;border:none;color:#fff;cursor:pointer;font-size:20px;line-height:1;opacity:.8}.auth-toast button:hover{opacity:1}@media (max-width:768px){.auth-toast{font-size:13px;padding:12px 16px;top:70px}}.landing-page{background:#fff;font-size:16px;line-height:1.6;min-height:100vh;overflow-x:hidden;width:100%}.landing-header{background:#fff;border-bottom:1px solid #e5e7eb;justify-content:space-between;padding:12px 16px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.landing-header,.landing-logo{align-items:center;display:flex}.landing-logo{gap:8px}.landing-logo img{height:36px;width:36px}.landing-logo span{color:#1e293b;font-size:18px;font-weight:700}.header-login{background:#fff;border:2px solid #3b82f6;border-radius:8px;color:#3b82f6;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px}.landing-hero{display:flex;flex-direction:column;gap:32px;padding:32px 16px}.hero-content{text-align:center}.trust-badge-main{align-items:center;background:#f0fdf4;border-radius:20px;color:#166534;display:inline-flex;font-size:13px;font-weight:500;gap:6px;margin-bottom:20px;padding:8px 14px}.trust-badge-main svg{height:14px;width:14px}.landing-hero h1{color:#1e293b;font-size:28px;font-weight:800;line-height:1.2;margin-bottom:16px}.hero-subtitle{color:#475569;font-size:16px;margin-bottom:24px}.hero-benefits{display:flex;flex-direction:column;gap:12px;margin-bottom:28px;padding:0 8px;text-align:left}.hero-benefit{align-items:center;color:#334155;display:flex;font-size:15px;gap:10px}.hero-benefit svg{color:#10b981;flex-shrink:0;height:18px;width:18px}.hero-buttons{margin-bottom:16px}.btn-primary-large{align-items:center;background:#3b82f6;border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:17px;font-weight:600;gap:8px;justify-content:center;padding:16px 24px;width:100%}.btn-primary-large svg{height:18px;width:18px}.btn-primary-large.white{background:#fff;color:#1e293b}.hero-reassurance{color:#64748b;display:flex;flex-wrap:wrap;font-size:13px;gap:4px 16px;justify-content:center}.hero-reassurance svg{height:12px;width:12px}.hero-visual{display:flex;justify-content:center;order:-1}.coach-card{background:#fff;border:2px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 20px #00000014;max-width:300px;padding:24px;width:100%}.coach-photo{align-items:center;background:linear-gradient(135deg,#3b82f6,#6366f1);border-radius:50%;display:flex;height:70px;justify-content:center;margin:0 auto 16px;padding:16px;width:70px}.coach-photo img{filter:brightness(0) invert(1);height:100%;width:100%}.coach-info{margin-bottom:16px;text-align:center}.coach-info h3{color:#1e293b;font-size:20px;font-weight:700;margin-bottom:2px}.coach-info p{color:#64748b;font-size:14px}.coach-status{align-items:center;color:#10b981;display:inline-flex;font-size:13px;gap:6px;margin-top:6px}.status-dot{animation:pulse 2s infinite;background:#10b981;border-radius:50%;height:8px;width:8px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.coach-message{background:#f8fafc;border-radius:12px;padding:14px}.coach-message p{color:#334155;font-size:14px;font-style:italic;line-height:1.5;margin:0}.trust-bar{grid-gap:8px;background:#f8fafc;border-bottom:1px solid #e2e8f0;border-top:1px solid #e2e8f0;display:grid;gap:8px;grid-template-columns:repeat(3,1fr);padding:24px 16px}.trust-item{text-align:center}.trust-item svg{color:#3b82f6;height:20px;margin-bottom:4px;width:20px}.trust-item strong{color:#1e293b;display:block;font-size:20px;font-weight:800}.trust-item span{color:#64748b;font-size:11px;line-height:1.3}.how-section{padding:48px 16px;text-align:center}.how-section h2{color:#1e293b;font-size:24px;font-weight:800;margin-bottom:8px}.section-desc{color:#64748b;font-size:15px;margin-bottom:32px}.steps-simple{display:flex;flex-direction:column;gap:24px}.step-simple{background:#f8fafc;flex-direction:column;padding:24px 20px;text-align:center}.step-icon,.step-simple{align-items:center;border-radius:16px;display:flex}.step-icon{background:#fff;box-shadow:0 2px 8px #0000000f;flex-shrink:0;font-size:36px;height:72px;justify-content:center;margin-bottom:16px;width:72px}.step-simple h3{color:#1e293b;font-size:18px;font-weight:700;margin-bottom:8px}.step-simple p{color:#64748b;flex-grow:1;font-size:14px;line-height:1.5}.features-section{background:#fff;padding:48px 16px;text-align:center}.features-section h2{color:#1e293b;font-size:24px;font-weight:800;margin-bottom:32px}.features-grid{display:flex;flex-direction:column;gap:16px}.feature-item{align-items:flex-start;background:#f8fafc;border-radius:16px;display:flex;gap:16px;padding:24px 20px;text-align:left}.feature-item svg{color:#3b82f6;flex-shrink:0;height:28px;width:28px}.feature-icon-emoji{flex-shrink:0;font-size:28px;text-align:center;width:28px}.feature-item h3{color:#1e293b;font-size:16px;font-weight:700;margin-bottom:4px}.feature-item p{color:#64748b;font-size:14px;line-height:1.5;margin:0}.testimonials-section{background:#f8fafc;padding:48px 16px;text-align:center}.testimonials-section h2{color:#1e293b;font-size:24px;font-weight:800;margin-bottom:8px}.testimonials-list{display:flex;flex-direction:column;gap:16px;margin-top:32px}.testimonial-item{background:#fff;border-radius:16px;padding:20px;text-align:left}.testimonial-top{align-items:center;display:flex;gap:10px;margin-bottom:14px}.testimonial-avatar{align-items:center;background:linear-gradient(135deg,#dbeafe,#c7d2fe);border-radius:50%;color:#3b82f6;display:flex;flex-shrink:0;font-size:16px;font-weight:700;height:44px;justify-content:center;width:44px}.testimonial-meta{flex:1 1;min-width:0}.testimonial-meta strong{color:#1e293b;display:block;font-size:14px}.testimonial-meta span{color:#64748b;font-size:12px}.testimonial-result{background:#dcfce7;border-radius:16px;color:#166534;flex-shrink:0;font-size:13px;font-weight:700;padding:6px 12px}.testimonial-item>p{color:#475569;font-size:14px;font-style:italic;line-height:1.6;margin-bottom:12px}.testimonial-stars{display:flex;gap:2px}.testimonial-stars svg{height:14px;width:14px}.faq-section{background:#fff;padding:48px 16px;text-align:center}.faq-section h2{color:#1e293b;font-size:24px;font-weight:800;margin-bottom:24px}.faq-list{text-align:left}.faq-item{background:#f8fafc;border-radius:12px;margin-bottom:12px;padding:20px}.faq-item h4{color:#1e293b;font-size:15px;font-weight:700;line-height:1.4;margin-bottom:8px}.faq-item p{color:#64748b;font-size:14px;line-height:1.5;margin:0}.final-cta-section{background:linear-gradient(135deg,#1e40af,#3b82f6);padding:48px 16px;text-align:center}.final-cta-content{margin:0 auto;max-width:600px}.final-cta-section h2{color:#fff;font-size:24px;font-weight:800;margin-bottom:12px}.final-cta-section p{color:#ffffffe6;font-size:15px;margin-bottom:28px}.final-cta-section .btn-primary-large{margin:0 auto;max-width:320px}.final-reassurance{flex-direction:column;gap:12px;margin-top:24px;width:100%}.final-reassurance,.final-reassurance span{align-items:center;display:flex;justify-content:center}.final-reassurance span{color:#ffffffd9;font-size:13px;gap:6px}.final-reassurance svg{height:14px;width:14px}.landing-footer{background:#1e293b;padding:32px 16px;text-align:center}.footer-logo{align-items:center;display:flex;gap:8px;justify-content:center;margin-bottom:12px}.footer-logo img{filter:brightness(0) invert(1);height:28px;width:28px}.footer-logo span{color:#fff;font-size:18px;font-weight:700}.landing-footer>p{color:#94a3b8;font-size:13px;margin-bottom:12px}.footer-links{align-items:center;display:flex;gap:12px;justify-content:center}.footer-links button{background:none;border:none;color:#60a5fa;cursor:pointer;font-size:14px}.footer-links button:hover{color:#93c5fd;text-decoration:underline}.footer-separator{color:#475569}@media (min-width:640px){.landing-header{padding:16px 24px}.landing-logo img{height:40px;width:40px}.landing-logo span{font-size:20px}.landing-hero{gap:40px;padding:48px 24px}.landing-hero h1{font-size:36px}.hero-subtitle{font-size:18px}.btn-primary-large{padding:18px 36px;width:auto}.trust-bar{padding:32px 24px}.trust-item strong{font-size:28px}.trust-item span{font-size:13px}.faq-section,.features-section,.how-section,.testimonials-section{padding:64px 24px}.faq-section h2,.features-section h2,.final-cta-section h2,.how-section h2,.testimonials-section h2{font-size:32px}.steps-simple{align-items:stretch;flex-direction:row;gap:16px}.step-simple{flex:1 1;min-height:220px}.features-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}.feature-item{flex-direction:column;text-align:center}.feature-icon-emoji,.feature-item svg{margin:0 auto}}@media (min-width:1024px){.landing-header{padding:20px 48px}.landing-hero{grid-gap:80px;align-items:center;display:grid;gap:80px;grid-template-columns:1.2fr 1fr;margin:0 auto;max-width:1200px;padding:80px 48px}.hero-content{text-align:left}.hero-visual{order:0}.hero-benefits{padding:0}.btn-primary-large{width:auto}.hero-reassurance{justify-content:flex-start}.landing-hero h1{font-size:48px}.hero-subtitle{font-size:20px;max-width:480px}.coach-card{max-width:340px;padding:32px}.coach-photo{height:90px;width:90px}.trust-bar{display:flex;gap:80px;justify-content:center;padding:48px}.trust-item{align-items:center;display:flex;gap:16px;text-align:left}.trust-item svg{height:32px;width:32px}.faq-section,.features-section,.how-section,.testimonials-section{margin:0 auto;max-width:1100px;padding:80px 48px}.faq-section h2,.features-section h2,.final-cta-section h2,.how-section h2,.testimonials-section h2{font-size:40px}.section-desc{font-size:18px;margin-bottom:48px}.steps-simple{gap:32px}.step-simple{padding:32px 24px}.step-icon{font-size:40px;height:80px;width:80px}.step-simple h3{font-size:20px}.step-simple p{font-size:16px}.features-grid{gap:24px}.feature-item{padding:32px}.feature-item svg{height:36px;width:36px}.feature-icon-emoji{font-size:36px}.feature-item h3{font-size:20px;margin-bottom:8px}.feature-item p{font-size:16px}.testimonials-list{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr);margin-top:48px}.testimonial-item{padding:28px}.testimonial-avatar{font-size:18px;height:52px;width:52px}.testimonial-meta strong{font-size:16px}.testimonial-item>p{font-size:15px}.faq-list{margin:0 auto;max-width:700px}.faq-item{padding:28px}.faq-item h4{font-size:18px}.faq-item p{font-size:16px}.final-cta-section{padding:80px 48px}.final-cta-section p{font-size:18px}.final-reassurance{flex-direction:row;gap:32px}}
/*# sourceMappingURL=main.4f1a9866.css.map*/
/* FIX CONSEILS PAGE - Uniformiser comme Recettes */
.tips-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))!important;gap:20px!important}
.tip-card{display:flex!important;flex-direction:column!important;min-height:200px!important;padding:20px!important;justify-content:space-between!important}
.tip-card h3{font-size:17px!important;margin-bottom:10px!important;line-height:1.3!important}
.tip-card p{font-size:14px!important;line-height:1.6!important;flex-grow:1!important;margin-bottom:16px!important}
.tip-header{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:16px!important}
.tip-icon{width:48px!important;height:48px!important;border-radius:14px!important;display:flex!important;align-items:center!important;justify-content:center!important}
.tip-category-badge{background:linear-gradient(135deg,#0061ff,#00d4ff)!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;background-clip:text!important}
@media(min-width:1200px){.tips-grid{grid-template-columns:repeat(5,1fr)!important}}
@media(min-width:900px) and (max-width:1199px){.tips-grid{grid-template-columns:repeat(4,1fr)!important}}
@media(min-width:600px) and (max-width:899px){.tips-grid{grid-template-columns:repeat(3,1fr)!important}}

/* FIX FILTRES CONSEILS - Horizontal comme Recettes */
.category-pills{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:10px!important;margin-bottom:24px!important;align-items:center!important}
.category-pill{display:inline-flex!important;flex-direction:row!important;white-space:nowrap!important}

/* FIX TIPS-CATEGORIES - Filtres horizontaux */
.tips-categories{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:10px!important;margin-bottom:24px!important;align-items:center!important}

/* FIX BULLES USER - Plus grandes et mieux proportionnées */
.message.user .message-bubble{min-width:80px!important;max-width:70%!important;padding:14px 18px!important;font-size:15px!important;line-height:1.5!important;border-radius:20px 20px 6px 20px!important}
.message.user{gap:12px!important}
.message.user .message-avatar{width:40px!important;height:40px!important;font-size:14px!important}

/* RESPONSIVE CHAT BUBBLES */
@media (max-width:640px){
.message.user .message-bubble{max-width:85%!important;padding:12px 14px!important;font-size:14px!important;min-width:60px!important}
.message.user .message-avatar{width:36px!important;height:36px!important;font-size:12px!important}
.message.user{gap:8px!important}
.message.assistant .message-bubble{max-width:90%!important;padding:12px 14px!important;font-size:14px!important}
.message-avatar{width:36px!important;height:36px!important}
}
@media (max-width:400px){
.message.user .message-bubble,.message.assistant .message-bubble{max-width:90%!important;padding:10px 12px!important;font-size:13px!important}
.message.user .message-avatar,.message-avatar{width:32px!important;height:32px!important;font-size:11px!important}
.message{gap:6px!important}
}

/* ========================================
   UPGRADE MODAL - REDESIGN SIMPLE & CLEAN
======================================== */
.upgrade-modal{background:#fff!important;border-radius:20px!important;max-width:420px!important;width:95%!important;max-height:90vh!important;overflow-y:auto!important;padding:0!important;box-shadow:0 25px 60px rgba(0,0,0,0.3)!important}
.upgrade-header{background:linear-gradient(135deg,#0061ff,#00d4ff)!important;color:#fff!important;padding:28px 24px!important;text-align:center!important;border-radius:20px 20px 0 0!important}
.upgrade-header h2{font-size:24px!important;margin:8px 0!important;font-weight:700!important}
.upgrade-header p{opacity:0.9!important;font-size:14px!important;margin:0!important}
.upgrade-close{position:absolute!important;top:16px!important;right:16px!important;background:rgba(255,255,255,0.2)!important;border:none!important;border-radius:50%!important;width:32px!important;height:32px!important;color:#fff!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important}
.upgrade-close:hover{background:rgba(255,255,255,0.3)!important}
.upgrade-content{padding:24px!important}
.trial-banner{background:linear-gradient(135deg,#fef3c7,#fde68a)!important;border-radius:14px!important;padding:16px!important;text-align:center!important;margin-bottom:20px!important}
.trial-banner .trial-icon{font-size:32px!important;margin-bottom:4px!important}
.trial-banner h3{color:#92400e!important;font-size:16px!important;margin:0 0 4px!important;font-weight:700!important}
.trial-banner p{color:#a16207!important;font-size:13px!important;margin:0!important}
.benefits-list{margin-bottom:20px!important}
.benefits-list h4{font-size:14px!important;color:#64748b!important;margin-bottom:12px!important;font-weight:600!important}
.benefit-item{display:flex!important;align-items:center!important;gap:10px!important;padding:8px 0!important;font-size:14px!important;color:#334155!important}
.benefit-item svg{color:#10b981!important;flex-shrink:0!important}
.pricing-cards{display:flex!important;gap:12px!important;margin-bottom:20px!important}
.pricing-card{flex:1!important;border:2px solid #e2e8f0!important;border-radius:14px!important;padding:16px!important;text-align:center!important;cursor:pointer!important;transition:all 0.2s!important;background:#fff!important}
.pricing-card:hover{border-color:#0061ff!important}
.pricing-card.selected{border-color:#0061ff!important;background:linear-gradient(135deg,#eff6ff,#fff)!important;box-shadow:0 4px 12px rgba(0,97,255,0.15)!important}
.pricing-card.popular{position:relative!important}
.pricing-card.popular::before{content:"Populaire"!important;position:absolute!important;top:-10px!important;left:50%!important;transform:translateX(-50%)!important;background:#10b981!important;color:#fff!important;font-size:10px!important;font-weight:700!important;padding:3px 10px!important;border-radius:10px!important;text-transform:uppercase!important}
.pricing-period{font-size:13px!important;color:#64748b!important;font-weight:600!important;margin-bottom:6px!important}
.pricing-amount{font-size:24px!important;font-weight:700!important;color:#1e293b!important}
.pricing-amount span{font-size:14px!important;font-weight:500!important;color:#64748b!important}
.pricing-yearly-note{font-size:12px!important;color:#10b981!important;font-weight:600!important;margin-top:4px!important}
.upgrade-cta{width:100%!important;padding:16px!important;background:linear-gradient(135deg,#0061ff,#0052d9)!important;color:#fff!important;border:none!important;border-radius:14px!important;font-size:16px!important;font-weight:600!important;cursor:pointer!important;transition:all 0.2s!important;box-shadow:0 4px 14px rgba(0,97,255,0.4)!important}
.upgrade-cta:hover{transform:translateY(-2px)!important;box-shadow:0 6px 20px rgba(0,97,255,0.5)!important}
.upgrade-footer{text-align:center!important;padding:16px 24px 24px!important;border-top:1px solid #f1f5f9!important}
.upgrade-footer p{font-size:12px!important;color:#94a3b8!important;margin:0!important}

/* RESPONSIVE UPGRADE MODAL */
@media (max-width:480px){
.upgrade-modal{max-width:100%!important;width:100%!important;max-height:100vh!important;border-radius:0!important;margin:0!important}
.upgrade-header{border-radius:0!important;padding:24px 20px!important}
.upgrade-header h2{font-size:20px!important}
.upgrade-content{padding:20px!important}
.pricing-cards{flex-direction:column!important;gap:10px!important}
.pricing-card{padding:14px!important}
.pricing-amount{font-size:22px!important}
.benefit-item{font-size:13px!important;padding:6px 0!important}
.upgrade-cta{padding:14px!important;font-size:15px!important}
}

/* ========================================
   LIMITE POPUP (quand quota atteint)
======================================== */
.limit-popup-overlay{position:fixed!important;inset:0!important;background:rgba(0,0,0,0.6)!important;backdrop-filter:blur(4px)!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:1000!important;padding:20px!important}
.limit-popup{background:#fff!important;border-radius:20px!important;max-width:380px!important;width:100%!important;text-align:center!important;padding:32px 24px!important;animation:slideUp 0.3s ease!important}
.limit-popup-icon{width:64px!important;height:64px!important;background:linear-gradient(135deg,#fef3c7,#fde68a)!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0 auto 16px!important;font-size:28px!important}
.limit-popup h2{font-size:20px!important;color:#1e293b!important;margin-bottom:8px!important}
.limit-popup p{color:#64748b!important;font-size:14px!important;line-height:1.5!important;margin-bottom:20px!important}
.limit-popup-cta{width:100%!important;padding:14px!important;background:linear-gradient(135deg,#0061ff,#0052d9)!important;color:#fff!important;border:none!important;border-radius:12px!important;font-size:15px!important;font-weight:600!important;cursor:pointer!important;margin-bottom:12px!important}
.limit-popup-close{background:none!important;border:none!important;color:#94a3b8!important;font-size:13px!important;cursor:pointer!important;text-decoration:underline!important}

/* FIX MODAL UPGRADE - Plus compact, pas de scroll */
.upgrade-modal{max-height:none!important;overflow:visible!important;padding:0!important}
.upgrade-header{padding:20px 24px!important}
.upgrade-header h2{font-size:22px!important;margin:4px 0!important}
.upgrade-header p{font-size:13px!important}
.upgrade-content{padding:16px 24px!important}
.trial-banner{padding:12px!important;margin-bottom:16px!important}
.trial-banner .trial-icon{font-size:28px!important;margin-bottom:2px!important}
.trial-banner h3{font-size:14px!important}
.trial-banner p{font-size:12px!important}
.benefits-list{margin-bottom:14px!important}
.benefits-list h4{font-size:13px!important;margin-bottom:8px!important}
.benefit-item{padding:5px 0!important;font-size:13px!important;gap:8px!important}
.pricing-cards{gap:10px!important;margin-bottom:16px!important}
.pricing-card{padding:12px!important}
.pricing-period{font-size:12px!important;margin-bottom:4px!important}
.pricing-amount{font-size:20px!important}
.pricing-amount span{font-size:12px!important}
.pricing-yearly-note{font-size:11px!important}
.upgrade-cta{padding:14px!important;font-size:15px!important}
.upgrade-footer{padding:12px 24px 16px!important}
.upgrade-footer p{font-size:11px!important}

/* Mobile - encore plus compact */
@media (max-width:480px){
.upgrade-header{padding:16px 20px!important}
.upgrade-header h2{font-size:18px!important}
.upgrade-content{padding:14px 20px!important}
.benefit-item{padding:4px 0!important;font-size:12px!important}
.pricing-card{padding:10px!important}
.pricing-amount{font-size:18px!important}
}

/* ========================================
   STRIPE MODAL - CHECKOUT INTÉGRÉ
======================================== */
.stripe-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.7);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:16px;animation:fadeIn 0.2s ease}
.stripe-modal{background:#fff;border-radius:20px;max-width:420px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:slideUp 0.3s ease}
.stripe-modal-close{position:absolute;top:12px;right:12px;width:32px;height:32px;background:rgba(255,255,255,0.9);border:none;border-radius:50%;font-size:20px;cursor:pointer;color:#64748b;z-index:10;display:flex;align-items:center;justify-content:center}
.stripe-modal-close:hover{background:#f1f5f9;color:#1e293b}
.stripe-modal-header{background:linear-gradient(135deg,#0061ff,#00d4ff);color:#fff;padding:24px;text-align:center;border-radius:20px 20px 0 0}
.stripe-modal-icon{font-size:36px;margin-bottom:8px}
.stripe-modal-header h2{font-size:22px;font-weight:700;margin:0 0 4px}
.stripe-modal-header p{font-size:13px;opacity:0.9;margin:0}
.stripe-modal-body{padding:20px}

/* Plans */
.stripe-plans{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}
.stripe-plan{display:flex;align-items:center;gap:12px;padding:14px 16px;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:all 0.2s;position:relative}
.stripe-plan:hover{border-color:#0061ff}
.stripe-plan.selected{border-color:#0061ff;background:linear-gradient(135deg,#eff6ff,#fff)}
.plan-badge{position:absolute;top:-8px;right:12px;background:#10b981;color:#fff;font-size:10px;font-weight:700;padding:2px 8px;border-radius:10px}
.plan-radio{width:20px;height:20px;border:2px solid #cbd5e1;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.stripe-plan.selected .plan-radio{border-color:#0061ff}
.stripe-plan.selected .plan-radio::after{content:'';width:10px;height:10px;background:#0061ff;border-radius:50%}
.plan-info{display:flex;flex-direction:column}
.plan-name{font-size:14px;color:#64748b;font-weight:500}
.plan-price{font-size:20px;font-weight:700;color:#1e293b}
.plan-price small{font-size:14px;font-weight:500;color:#64748b}
.plan-savings{font-size:12px;color:#10b981;font-weight:600}

/* Card Section */
.stripe-card-section{margin-bottom:16px}
.stripe-card-section label{display:block;font-size:13px;font-weight:600;color:#475569;margin-bottom:8px}
#stripe-card-element{padding:14px;border:2px solid #e2e8f0;border-radius:10px;background:#fff;transition:border-color 0.2s}
#stripe-card-element:focus-within{border-color:#0061ff}
.stripe-error{color:#ef4444;font-size:13px;margin-top:8px;min-height:20px}

/* Trial Info */
.stripe-trial-info{display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#fef3c7,#fde68a);padding:12px 14px;border-radius:12px;margin-bottom:16px}
.trial-icon{font-size:24px}
.trial-text{display:flex;flex-direction:column}
.trial-text strong{font-size:13px;color:#92400e}
.trial-text span{font-size:12px;color:#a16207}

/* Submit */
.stripe-submit{width:100%;padding:16px;background:linear-gradient(135deg,#0061ff,#0052d9);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all 0.2s;box-shadow:0 4px 14px rgba(0,97,255,0.4)}
.stripe-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,97,255,0.5)}
.stripe-submit:disabled{opacity:0.7;cursor:not-allowed}
.stripe-secure{text-align:center;font-size:11px;color:#94a3b8;margin-top:12px}

/* Success */
.stripe-success{text-align:center;padding:40px 24px}
.success-icon{font-size:64px;margin-bottom:16px}
.stripe-success h2{font-size:22px;color:#1e293b;margin-bottom:8px}
.stripe-success p{color:#64748b;margin-bottom:24px}

/* Responsive */
@media(max-width:480px){
.stripe-modal{max-width:100%;max-height:100vh;border-radius:0;margin:0}
.stripe-modal-header{border-radius:0;padding:20px}
.stripe-modal-header h2{font-size:20px}
.stripe-modal-body{padding:16px}
.stripe-plan{padding:12px}
.plan-price{font-size:18px}
}

@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes slideUp{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}

/* Bannière paiement immédiat (si déjà eu trial) */
.stripe-info-banner{display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#e0f2fe,#bae6fd);padding:12px 14px;border-radius:12px;margin-bottom:16px}
.info-icon{font-size:24px}
.info-text{display:flex;flex-direction:column}
.info-text strong{font-size:13px;color:#0369a1}
.info-text span{font-size:12px;color:#0284c7}

/* === PAGE ABONNEMENT - SECTION TRIAL === */
.trial-manage-section{text-align:center;padding:24px;background:#f8fafc;border-radius:16px;margin-top:20px}
.trial-manage-section h4{font-size:18px;margin-bottom:12px;color:#1e293b}
.trial-info-text{color:#64748b;font-size:14px;line-height:1.6;margin-bottom:20px;max-width:400px;margin-left:auto;margin-right:auto}
.cancel-trial-btn{background:#fff;color:#ef4444;border:2px solid #fecaca;padding:12px 24px;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.2s}
.cancel-trial-btn:hover{background:#fef2f2;border-color:#ef4444}

/* Transformer la bannière warning en info positive */
.warning-banner{background:linear-gradient(135deg,#ecfdf5,#d1fae5)!important;border-color:#10b981!important}
.warning-banner svg{color:#10b981!important}
.warning-banner span{color:#047857!important}

/* === MODAL ANNULATION ÉMOTIONNEL === */
.cancel-emotion-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.7);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:16px}
.cancel-emotion-modal{background:#fff;border-radius:20px;max-width:440px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:slideUp 0.3s ease}
.close-emotion-modal{position:absolute;top:12px;right:12px;width:36px;height:36px;background:#f1f5f9;border:none;border-radius:50%;font-size:24px;cursor:pointer;color:#64748b;display:flex;align-items:center;justify-content:center}
.emotion-step{padding:32px 24px;text-align:center}
.emotion-icon{font-size:64px;margin-bottom:16px}
.emotion-step h2{font-size:22px;color:#1e293b;margin-bottom:8px}
.emotion-step>p{color:#64748b;font-size:14px;margin-bottom:20px}

/* Pertes */
.emotion-losses{background:#fef2f2;border-radius:12px;padding:16px;margin-bottom:20px;text-align:left}
.emotion-losses h4{font-size:14px;color:#991b1b;margin-bottom:12px}
.loss-item{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:13px;color:#7f1d1d}
.loss-item span{font-size:16px}

/* Stats */
.emotion-stats{background:#f0fdf4;border-radius:12px;padding:16px;margin-bottom:20px;text-align:left}
.emotion-stats p{font-size:13px;color:#166534;margin:6px 0}
.emotion-stats strong{color:#15803d}

/* Boutons */
.emotion-stay-btn{width:100%;padding:16px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;margin-bottom:12px;box-shadow:0 4px 14px rgba(16,185,129,0.4)}
.emotion-stay-btn:hover{transform:translateY(-2px)}
.emotion-continue-btn{background:none;border:none;color:#94a3b8;font-size:13px;cursor:pointer;text-decoration:underline}
.emotion-back-btn{background:none;border:none;color:#64748b;font-size:13px;cursor:pointer;margin-top:12px}

/* Raisons */
.reason-options{display:flex;flex-direction:column;gap:10px;margin-bottom:20px;text-align:left}
.reason-option{display:flex;align-items:center;gap:12px;padding:12px 14px;border:2px solid #e2e8f0;border-radius:10px;cursor:pointer;transition:all 0.2s}
.reason-option:hover{border-color:#0061ff;background:#f8fafc}
.reason-option input{accent-color:#0061ff}
.reason-option span{font-size:14px;color:#334155}

.emotion-final-cancel{width:100%;padding:14px;background:#ef4444;color:#fff;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer}
.emotion-final-cancel:hover{background:#dc2626}

.emotion-portal-btn{width:100%;padding:14px;background:#64748b;color:#fff;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;margin-top:16px}
.final-note{color:#10b981;font-weight:500;margin-top:16px}

/* Future plan info */
.future-plan-info{background:linear-gradient(135deg,#eff6ff,#dbeafe);padding:16px;border-radius:12px;margin-bottom:16px}
.future-plan-label{display:block;font-size:13px;color:#1e40af;margin-bottom:4px}
.future-plan-price{font-size:20px;color:#1e3a8a}

/* Responsive */
@media(max-width:480px){
.cancel-emotion-modal{max-width:100%;border-radius:0;max-height:100vh}
.emotion-step{padding:24px 20px}
.emotion-icon{font-size:48px}
.emotion-step h2{font-size:18px}
}

/* Cacher Stripe Link */
.LinkButton,.p-LinkButton,.Link,.p-Link,[data-testid="link-button"],.StripeElement--link,.p-LinkAutofillPrompt{display:none!important}
#stripe-card-element iframe + div{display:none!important}
.p-LinkAutofillPromptBadge{display:none!important}

/* Cacher Link Stripe - Plus agressif */
.stripe-card-section [class*="Link"]{display:none!important;visibility:hidden!important;height:0!important;overflow:hidden!important}
.stripe-card-section button[class*="link" i]{display:none!important}
.p-LinkAutofillPrompt,.p-LinkButton,.p-BrowserAutofillPrompt{display:none!important}
#stripe-card-element>div>div:last-child:not(:first-child){display:none!important}
