@tailwind base;@tailwind components;@tailwind utilities;@keyframes shine{0%{background-position:-200% 0}50%{background-position:0% 0}to{background-position:200% 0}}.animate-shine{animation:shine 5s ease-in-out infinite}.shiny-text-container{position:relative}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#121212;color:#eaeaea;line-height:1.6;margin:0;padding:0;overflow-x:hidden}.App{height:100vh;width:100vw;overflow-x:hidden}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}button:focus,input:focus,textarea:focus{outline:2px solid #667eea;outline-offset:2px}*{transition:color .3s ease,background-color .3s ease,border-color .3s ease}.loading{opacity:.7;pointer-events:none}.error{color:#e74c3c;background:#e74c3c1a;border:1px solid rgba(231,76,60,.3);border-radius:8px;padding:12px;margin:10px 0}.success{color:#27ae60;background:#27ae601a;border:1px solid rgba(39,174,96,.3);border-radius:8px;padding:12px;margin:10px 0}@media (max-width: 768px){.hide-mobile{display:none!important}}@media (min-width: 769px){.hide-desktop{display:none!important}}.header-right{display:flex;align-items:center;justify-content:flex-end;min-width:120px}.profile-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;padding:0}.profile-btn-img{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid #6ee7b7;background:#222}.profile-initials{width:40px;height:40px;border-radius:50%;background:#6ee7b7;color:#181c24;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;border:2px solid #6ee7b7}@media (max-width: 600px){.dashboard-header{padding:.5rem .75rem}.profile-btn-img,.profile-initials{width:32px;height:32px;font-size:1rem}}.dashboard-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;background:var(--header-bg, #181c24);border-bottom:1px solid #222}.header-left .medikami-logo{font-size:1.5rem;font-weight:700;color:#6ee7b7;letter-spacing:1px}.header-right{display:flex;align-items:center}.profile-btn{display:flex;align-items:center;background:#222;border:none;border-radius:2rem;padding:.25rem .75rem;cursor:pointer;transition:background .2s}.profile-btn:hover{background:#333}.profile-btn-img{width:32px;height:32px;border-radius:50%;object-fit:cover;margin-right:.5rem;border:2px solid #6ee7b7}.profile-btn-text{color:#fff;font-weight:500;font-size:1rem}.desktop-only{display:inline-block}.mobile-only{display:none}@media (max-width: 600px){.desktop-only{display:none!important}.mobile-only{display:inline-block!important;font-size:1.2rem;font-weight:700;color:gold;margin-left:8px}}.dashboard.premium-dark{--bg-primary: #121212;--bg-secondary: #1E1E1E;--bg-tertiary: #2A2A2A;--text-primary: #EAEAEA;--text-secondary: #B0BEC5;--text-muted: #9E9E9E;--border-color: #424242;--border-hover: #616161;--accent-color: #FFD700;--accent-hover: #FFED4E;--success-color: #2ECC71;--warning-color: #FFC107;--error-color: #E53935;--shadow: 0 4px 6px rgba(0, 0, 0, .3);--shadow-hover: 0 8px 15px rgba(0, 0, 0, .4)}.dashboard{display:flex;flex-direction:column;height:100vh;width:100vw;background:var(--bg-primary);color:var(--text-primary);transition:all .3s ease;overflow-x:hidden;position:fixed;top:0;left:0}.user-profile{position:relative;display:flex;align-items:center;gap:6px}.profile-icon-container{display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease}.profile-icon-container:hover{transform:scale(1.05)}.profile-icon{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid var(--accent-color);background:var(--bg-secondary)}.profile-initials{width:40px;height:40px;border-radius:50%;background:var(--accent-color);color:var(--bg-primary);display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;border:2px solid var(--accent-color);text-transform:uppercase}.profile-dropdown{position:absolute;top:100%;right:0;margin-top:8px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-hover);min-width:280px;z-index:1000;overflow:hidden}.dropdown-header{padding:20px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.user-info{display:flex;align-items:center;gap:12px}.dropdown-profile-initials{width:48px;height:48px;border-radius:50%;background:var(--accent-color);color:var(--bg-primary);display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;border:2px solid var(--accent-color);text-transform:uppercase}.user-details{flex:1;min-width:0}.user-name{font-weight:600;color:var(--text-primary);margin-bottom:4px;font-size:1.1rem}.user-email{color:var(--text-secondary);font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-menu{padding:8px 0}.dropdown-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 20px;background:none;border:none;color:var(--text-primary);cursor:pointer;transition:background-color .2s ease;font-size:.95rem;text-align:left}.dropdown-item svg{flex-shrink:0;color:var(--text-secondary)}.dropdown-divider{height:1px;background:var(--border-color);margin:8px 0}.logout-item svg{color:var(--error-color)}@media (max-width: 600px){.profile-icon,.profile-initials{width:32px;height:32px;font-size:1rem}.profile-dropdown{position:fixed;inset:auto 0 0;margin-top:0;border-radius:20px 20px 0 0;min-width:auto}.dropdown-header{padding:16px}.dropdown-profile-img,.dropdown-profile-initials{width:40px;height:40px;font-size:1.25rem}.user-name{font-size:1rem}.user-email{font-size:.85rem}.dropdown-item{padding:16px 20px;font-size:1rem}}.chat-interface.premium-dark{--bg-primary: #121212;--bg-secondary: #1E1E1E;--bg-tertiary: #2A2A2A;--text-primary: #EAEAEA;--text-secondary: #B0BEC5;--text-muted: #9E9E9E;--border-color: #424242;--border-hover: #616161;--accent-color: #FFD700;--accent-hover: #FFED4E;--success-color: #2ECC71;--warning-color: #FFC107;--error-color: #E53935;--shadow: 0 4px 6px rgba(0, 0, 0, .3);--shadow-hover: 0 8px 15px rgba(0, 0, 0, .4);--glass-bg: rgba(255, 255, 255, .05);--glass-border: rgba(255, 255, 255, .1);--shadow-glow: 0 8px 32px rgba(255, 215, 0, .1);--shadow-soft: 0 4px 16px rgba(0, 0, 0, .3);background:var(--bg-primary);color:var(--text-primary);overflow:hidden;width:100%;box-sizing:border-box;height:100vh;display:flex;flex-direction:column;position:relative}.typewriter-text{position:relative;display:inline-block;overflow:hidden;white-space:pre-wrap;word-wrap:break-word}.typewriter-text:after{content:"|";color:var(--accent-color);font-weight:700;animation:blink 1s infinite;margin-left:2px}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.typewriter-text strong,.typewriter-text em,.typewriter-text .message-bullet{opacity:0;animation:typewriterFadeIn .1s ease-in forwards}@keyframes typewriterFadeIn{to{opacity:1}}.message.bot .typewriter-text{background:none;border:none;box-shadow:none;padding:0;margin:0;border-radius:0;animation:none}.chat-interface{display:flex;flex-direction:column;height:100%;width:100%;background:var(--bg-primary);color:var(--text-primary);position:relative;transition:all .3s ease;overflow:hidden}.chat-header{background:var(--bg-secondary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--glass-border);padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow-soft);z-index:10;flex-shrink:0}.header-left{display:flex;align-items:center;gap:1rem;flex:1}.chat-title{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;text-align:center}.header-actions{display:flex;align-items:center;gap:.75rem;flex:1;justify-content:flex-end}.chat-title h2{color:var(--accent-color);margin:0;font-size:1.5rem;font-weight:600;text-shadow:0 0 10px rgba(255,215,0,.3)}.chat-title p{color:var(--text-secondary);margin:.25rem 0 0;font-size:.9rem}.header-actions{display:flex;gap:.75rem;align-items:center}.chat-container{display:flex;flex:1;overflow:hidden;position:relative}.chat-messages{flex:1;overflow-y:auto;padding:1.5rem;scroll-behavior:smooth;min-width:0;box-sizing:border-box}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:4px}.chat-messages::-webkit-scrollbar-thumb{background:var(--accent-color);border-radius:4px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#ffe55c}.message{display:flex;margin-bottom:1.5rem;animation:messageSlideIn .3s ease-out}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.message:hover{background:var(--bg-secondary)}.message.user{flex-direction:row-reverse}.message-avatar{margin:0 .75rem;flex-shrink:0}.bot-avatar{width:40px;height:40px;background:linear-gradient(135deg,var(--accent-color),#FFE55C);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--bg-primary);font-size:.9rem;position:relative;box-shadow:0 4px 16px #ffd7004d}.avatar-glow{position:absolute;inset:-2px;background:linear-gradient(135deg,var(--accent-color),transparent);border-radius:50%;opacity:.5;animation:avatarPulse 2s ease-in-out infinite}@keyframes avatarPulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.1);opacity:.8}}.user-avatar{width:40px;height:40px;background:var(--bg-tertiary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;border:2px solid var(--border-color);transition:all .3s ease}.message-content{flex:1;max-width:95%;position:relative;padding-bottom:16px}.message.bot .message-content{background:none;border:none;box-shadow:none;padding:0 0 16px;margin:0;border-radius:0;position:relative;width:100%;max-width:none;display:flex;align-items:flex-start;gap:8px}.ai-profile{flex-shrink:0;width:40px;height:40px;position:relative}.ai-logo{width:100%;height:100%;border-radius:50%;object-fit:cover;border:2px solid var(--accent-color);box-shadow:0 4px 16px #ffd7004d;background:var(--bg-primary)}.message.bot .message-content:before{display:none}.message.bot .message-text{background:none;border:none;box-shadow:none;border-radius:0;color:var(--text-primary);text-align:left;padding:0;margin:0;flex:1}.message.user .message-content{background:none;border:none;box-shadow:none;padding:0 0 16px;margin:0;border-radius:0;position:relative;color:var(--text-primary);text-align:right}.message-text{line-height:1.4;word-wrap:break-word;white-space:pre-wrap}.message-text strong{font-weight:700;color:var(--accent-color);display:inline;font-size:1rem;text-transform:none;letter-spacing:.2px;margin-top:.5rem;margin-bottom:.25rem}.message-text strong:contains("🩺"),.message-text strong:contains("💊"),.message-text strong:contains("🥗"){display:inline!important;margin-right:.5rem}.message-text strong{display:inline!important}.message-text strong:contains("🩺 **Symptoms**"),.message-text strong:contains("💊 **Prescription"),.message-text strong:contains("🥗 **Diet Plan"){display:block!important;margin-top:1rem;margin-bottom:.5rem;font-size:1.1rem;font-weight:700;color:var(--accent-color)}.message-text strong:contains("Symptom"){font-size:.9rem;color:var(--text-primary);font-weight:600}.message-text ul{margin:.25rem 0;padding-left:1.2rem}.message-text li{margin:.15rem 0;line-height:1.3}.message-text p{margin:.5rem 0}.message-text strong:contains("🩺 **Symptoms**")+*{margin-bottom:1rem}.message-text strong:contains("✅ Eat This:"){color:var(--success-color)}.message-text strong:contains("❌ Avoid This:"){color:var(--error-color)}.message-text strong:first-child{margin-top:0}.message-text em{font-style:italic;color:var(--text-secondary)}.message-bullet{display:flex;align-items:flex-start;margin:.5rem 0;gap:.5rem}.bullet-point{color:var(--accent-color);font-weight:700;flex-shrink:0;margin-top:.1rem}.bullet-content{flex:1}.message-time{font-size:.75rem;color:var(--text-muted);opacity:.7;position:absolute;bottom:4px;right:8px}.copy-button{position:absolute;top:.5rem;right:.5rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:var(--text-secondary);padding:.5rem;border-radius:8px;cursor:pointer;transition:all .3s ease;opacity:0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.message.bot .message-content-wrapper:hover .copy-button{opacity:1}.copy-button:hover{background:var(--accent-color);color:var(--bg-primary);transform:scale(1.05)}.copy-button.copied{background:var(--success-color);color:#fff;border-color:var(--success-color)}.copy-button svg{width:16px;height:16px}.message-content-wrapper{position:relative;width:100%;flex:1}.message.bot .message-avatar{display:none}.message.bot{margin-bottom:2rem;padding-left:0}.message.bot .message-text{text-align:left;padding-left:0;margin-left:0}.typing-indicator{display:flex;align-items:center;gap:.75rem;color:var(--text-secondary);font-style:italic}.pulse-heart{animation:heartPulse 1.5s ease-in-out infinite;font-size:1.2rem}@keyframes heartPulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.quick-actions{display:flex;gap:.75rem;padding:1rem 1.5rem;flex-wrap:wrap;flex-shrink:0}.quick-action-btn{background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--text-primary);padding:.75rem 1.25rem;border-radius:12px;cursor:pointer;font-size:.9rem;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);white-space:nowrap}.quick-action-btn:hover{background:var(--accent-color);color:var(--bg-primary);transform:translateY(-2px);box-shadow:var(--shadow-glow)}.chat-input{padding:1rem 1.5rem;background:var(--bg-secondary);border-top:1px solid var(--glass-border);flex-shrink:0}.input-container{display:flex;align-items:center;gap:.5rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:16px;padding:.75rem;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);transition:all .3s ease;box-shadow:0 4px 20px #0000001a;box-sizing:border-box;width:100%}.input-container:focus-within{border-color:var(--accent-color);box-shadow:0 8px 30px #ffd7001a;transform:translateY(-2px)}.attach-btn{background:none;border:none;color:var(--text-primary);padding:.5rem;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.attach-btn:hover{background:var(--bg-secondary);color:var(--accent-color);transform:scale(1.1)}.attach-btn-icon{width:28px;height:28px;object-fit:cover;border-radius:6px;transition:all .3s ease}.upload-label-icon{width:16px;height:16px;object-fit:cover;border-radius:3px;margin-right:8px;vertical-align:middle}.chat-input-field{flex:1;background:none;border:none;color:var(--text-primary);font-size:.95rem;outline:none;padding:.5rem;font-family:inherit;min-width:0;box-shadow:none}.send-btn{background:none;border:none;color:var(--text-primary);padding:.5rem;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.send-btn:hover:not(:disabled){background:var(--bg-secondary);color:var(--accent-color);transform:scale(1.1)}.send-btn:disabled{opacity:.5;cursor:not-allowed}.voice-btn{background:none;border:none;color:var(--text-primary);cursor:pointer;padding:.5rem;border-radius:8px;transition:all .3s ease;position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center}.voice-btn:hover{background:var(--bg-secondary);color:var(--accent-color);transform:scale(1.1)}.voice-btn-icon{width:28px;height:28px;object-fit:cover;border-radius:6px;transition:all .3s ease}.voice-btn.listening{color:var(--error-color);animation:voiceListening 1s ease-in-out infinite}@keyframes voiceListening{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.history-item span,.insight-item p{color:var(--text-primary);font-size:.9rem;margin:0 0 .25rem}.history-item small,.insight-item small{color:var(--text-secondary);font-size:.75rem}.glossary-item strong{color:var(--accent-color);font-weight:600}.upload-area{display:flex;flex-direction:column;gap:.75rem}.upload-label{background:var(--glass-bg);border:2px dashed var(--glass-border);border-radius:12px;padding:2rem 1rem;text-align:center;color:var(--text-secondary);cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.upload-label:hover{border-color:var(--accent-color);color:var(--accent-color);background:#ffd7000d}.login-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:999;animation:fadeIn .25s ease-out}.login-prompt{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,#1a1a1a,#2a2a2a);border:2px solid #FFD700;border-radius:20px;padding:3rem;text-align:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 25px 80px #000c,0 0 30px #ffd70033;z-index:1000;max-width:500px;width:90%;animation:modalSlideIn .45s cubic-bezier(.34,1.56,.64,1)}@keyframes modalSlideIn{0%{opacity:0;transform:translate(-50%,-60%)}to{opacity:1;transform:translate(-50%,-50%)}}.login-prompt h3{color:gold;margin:0 0 1rem;font-size:2rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;text-shadow:0 2px 4px rgba(255,215,0,.3)}.login-subtitle{color:#eaeaea;margin:0 0 2.5rem;font-size:1.1rem;line-height:1.6;font-weight:400}.login-buttons{display:flex;flex-direction:column;gap:.75rem;justify-content:center;align-items:center}.login-btn-primary{background:#000;color:#76ff21;border:2px solid #000000;border-radius:12px;padding:1rem 2rem;font-weight:700;cursor:pointer;transition:all .3s ease;font-size:1.1rem;width:100%;max-width:300px;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 15px #0000004d;margin-bottom:.75rem;outline:none}.login-btn-primary:focus{outline:none;border:2px solid #000000}.signup-btn{background:transparent;color:#6cee16;border:2px solid #EAEAEA;border-radius:12px;padding:1rem 2rem;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1rem;width:100%;max-width:300px;margin-bottom:.75rem}.signup-btn:hover{background:#eaeaea;color:#1a1a1a;border-color:#eaeaea;transform:translateY(-3px);box-shadow:0 8px 25px #eaeaea4d}.stay-logged-out-btn{background:none;border:none;color:gold;text-decoration:none;cursor:pointer;transition:all .3s ease;font-size:.9rem;margin-top:1rem;padding:.5rem;font-weight:500}.stay-logged-out-btn:hover{color:#ffed4e;text-decoration:underline}.emergency-btn{background:linear-gradient(135deg,#ff4757,#ff3742);color:#fff;border:none;border-radius:8px;padding:.5rem 1rem;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.9rem;margin-right:.5rem;animation:pulse 2s infinite}.emergency-btn:hover{background:linear-gradient(135deg,#ff3742,#ff2f3a);transform:translateY(-2px);box-shadow:0 4px 12px #ff475766}.sign-in-btn{background:linear-gradient(135deg,#000,gold);color:#000;border:none;border-radius:8px;padding:.5rem 1rem;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.9rem;display:flex;align-items:center;gap:.5rem;margin-right:.5rem}.sign-in-btn:hover{background:linear-gradient(135deg,#34d399,#10b981);transform:translateY(-2px);box-shadow:0 4px 12px #6ee7b766}.sign-in-btn svg{width:16px;height:16px;flex-shrink:0}.user-profile{position:relative;display:flex;align-items:center}.profile-icon-container{width:40px;height:40px;border-radius:50%;overflow:hidden;cursor:pointer;transition:all .3s ease;border:2px solid transparent;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary)}.profile-icon-container:hover{border-color:var(--accent-color);transform:scale(1.05);box-shadow:0 0 20px #ffd7004d}.profile-icon{width:100%;height:100%;object-fit:cover}.profile-dropdown{position:absolute;top:100%;right:0;margin-top:.5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 8px 32px #0000004d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:1000;min-width:250px;animation:dropdownSlideIn .2s ease-out}.dropdown-header{padding:1rem;border-bottom:1px solid var(--border-color)}.user-info{display:flex;align-items:center;gap:.75rem}.dropdown-profile-img{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid var(--accent-color)}.user-details{flex:1}.user-name{font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.user-email{font-size:.8rem;color:var(--text-secondary)}.dropdown-menu{padding:.5rem}.dropdown-item{width:100%;background:none;border:none;color:var(--text-primary);padding:.75rem 1rem;text-align:left;cursor:pointer;transition:all .3s ease;border-radius:8px;font-size:.9rem;display:flex;align-items:center;gap:.5rem}.dropdown-item:first-child{margin-bottom:.25rem}@keyframes pulse{0%{box-shadow:0 0 #ff4757b3}70%{box-shadow:0 0 0 10px #ff475700}to{box-shadow:0 0 #ff475700}}.feedback-section{margin:1.5rem 0;padding:1rem;background:var(--bg-tertiary);border-radius:8px;border:1px solid var(--border-color)}.feedback-section h4{color:var(--accent-color);margin:0 0 .5rem;font-size:1rem;font-weight:600}.feedback-section p{color:var(--text-secondary);margin:0 0 1rem;font-size:.9rem}.feedback-buttons{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color)}.feedback-text{color:var(--text-secondary);font-size:.8rem;font-weight:500}.feedback-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);border-radius:8px;padding:.5rem 1rem;cursor:pointer;transition:all .3s ease;font-size:.9rem;font-weight:500;display:flex;align-items:center;justify-content:center;gap:.25rem;min-width:120px}.feedback-btn:hover{background:var(--bg-secondary);border-color:var(--accent-color);color:var(--accent-color);transform:scale(1.1)}.feedback-btn.active{background:var(--accent-color);color:var(--bg-primary);border-color:var(--accent-color)}.feedback-confirmation{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color);animation:fadeInOut 2s ease-in-out}.feedback-confirmation .feedback-text{color:var(--accent-color);font-size:.8rem;font-weight:500;font-style:italic}@keyframes fadeInOut{0%{opacity:0;transform:translateY(10px)}20%{opacity:1;transform:translateY(0)}80%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.chat-interface{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.message-text,.message-text *{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.chat-input,.chat-messages,.input-container,.chat-input-field{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.chat-input-field{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;cursor:text}.chat-header,.header-actions,.quick-actions,.message-avatar,.message-time,.login-prompt{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.chat-input-field:focus,.input-container:focus,button:focus{outline:none}.popup-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:999;animation:fadeIn .25s ease-out}.popup-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;padding:0;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);box-shadow:0 20px 60px #00000080;z-index:1000;max-width:500px;width:90%;max-height:80vh;overflow:hidden;animation:popupSlideIn .35s cubic-bezier(.34,1.56,.64,1)}.popup-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 1.5rem 0;border-bottom:1px solid var(--border-color);margin-bottom:1rem}.popup-title{margin:0;font-size:1.2rem;font-weight:600;color:var(--text-primary)}.popup-close{background:none;border:none;color:var(--text-secondary);padding:.5rem;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.popup-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.popup-close svg{width:20px;height:20px}.popup-content{padding:0 1.5rem 1.5rem}.popup-content p{margin:0;color:var(--text-primary);font-size:1rem;line-height:1.6;text-align:center}.popup-footer{padding:0 1.5rem 1.5rem;display:flex;flex-direction:column;gap:.75rem;align-items:center}.popup-btn{padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.9rem;border:none;width:100%;max-width:200px}.popup-btn-primary{background:#000;color:#fff;border:2px solid #000000;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 15px #0000004d}.popup-btn-secondary{background:#fff;color:#000;border:2px solid #000000;font-weight:600}.popup-btn-secondary:hover{background:#000;color:#fff;transform:translateY(-2px)}.popup-btn-tertiary{background:transparent;color:var(--text-secondary);border:none;text-decoration:underline;font-weight:400;padding:.5rem 1rem}.popup-btn-tertiary:hover{color:var(--text-primary);background:var(--bg-tertiary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popupSlideIn{0%{opacity:0;transform:translate(-50%,-58%) scale(.98)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.emergency-overlay{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1100;animation:fadeIn .25s ease-out}.emergency-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,#0a0a0a,#1a1a1a);border:2px solid rgba(255,215,0,.35);border-radius:20px;width:92%;max-width:440px;box-shadow:0 25px 80px #000000bf,0 0 0 1px #ffd7001f;z-index:1200;overflow:hidden;animation:modalSlideIn .45s cubic-bezier(.34,1.56,.64,1)}.emergency-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.25rem .75rem}.emergency-title{margin:0;font-size:1.25rem;font-weight:700;color:var(--accent-color);text-shadow:0 0 16px rgba(255,215,0,.25)}.emergency-close{background:#ffffff0f;border:1px solid rgba(255,255,255,.08);color:var(--text-secondary);cursor:pointer;padding:.5rem;border-radius:10px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.emergency-close:hover{background:#ffd7001f;border-color:#ffd7004d;color:var(--accent-color)}.emergency-content{padding:0 1.25rem 1.25rem;text-align:center}.emergency-number{font-size:2.25rem;font-weight:800;color:#ffed4e;letter-spacing:1px;margin:.5rem 0}.emergency-subtitle{color:var(--text-secondary);margin:0 0 1rem}.emergency-actions{padding:0 1.25rem 1.25rem;display:flex;align-items:center;justify-content:center}.call-btn{display:inline-block;background:linear-gradient(135deg,#000,#1a1a1a);color:#fff;border:2px solid rgba(255,215,0,.35);border-radius:12px;padding:.9rem 1.5rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .25s ease;text-decoration:none;box-shadow:0 8px 25px #00000059}.call-btn:hover{background:linear-gradient(135deg,var(--accent-color) 0%,#FFED4E 100%);color:#000;transform:translateY(-2px);box-shadow:0 15px 35px #ffd70059}@media (max-width: 768px){.popup-modal{width:95%;max-width:400px}.popup-header,.popup-content,.popup-footer{padding-left:1rem;padding-right:1rem}.popup-title{font-size:1.1rem}}.message-actions{display:flex;gap:6px;margin-top:12px;margin-bottom:8px;flex-wrap:wrap;align-items:center;justify-content:flex-start;opacity:.7;transition:opacity .3s ease;position:relative;z-index:1}.message-actions:hover{opacity:1}.action-btn{display:flex;align-items:center;justify-content:center;padding:6px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:4px;color:#eaeaea;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:28px;height:28px}.action-btn:hover{background:#ffffff26;border-color:#ffffff4d;transform:translateY(-1px)}.action-btn svg{width:16px;height:16px;flex-shrink:0}.action-btn.copied{background:#4caf50;border-color:#4caf50;color:#fff}.action-btn.liked{background:#2196f3;border-color:#2196f3;color:#fff}.action-btn.disliked{background:#f44336;border-color:#f44336;color:#fff}.action-btn.speaking{background:#2196f3;border-color:#2196f3;color:#fff;animation:pulse 1.5s ease-in-out infinite}@media (max-width: 768px){.message-actions{gap:3px;margin-top:6px}.action-btn{padding:5px;min-width:24px;height:24px}.action-btn svg{width:12px;height:12px}}@media (max-width: 480px){.message-actions{gap:2px;margin-top:4px}.action-btn{padding:4px;min-width:20px;height:20px}.action-btn svg{width:10px;height:10px}}.chat-input-field{flex:1;background:none;border:none;color:var(--text-primary);font-size:.95rem;outline:none;padding:.5rem;font-family:inherit;min-width:0;box-shadow:none;opacity:1!important;visibility:visible!important}.chat-input-field:focus{outline:none!important;border:none!important;box-shadow:none!important;outline-offset:0!important}.chat-input-field::placeholder{color:var(--text-secondary);opacity:.7}.input-container{display:flex;align-items:center;gap:.5rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:16px;padding:.75rem;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);transition:all .3s ease;box-shadow:0 4px 20px #0000001a;box-sizing:border-box;width:100%;opacity:1!important;visibility:visible!important}@media (max-width: 768px){.chat-interface.premium-dark{height:100vh}.chat-header{padding:.75rem 1rem;flex-direction:row;justify-content:space-between;align-items:center;height:auto;min-height:60px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.header-left{order:1;justify-content:flex-start;flex:1}.chat-title{order:2;display:none}.header-actions{order:3;justify-content:flex-end;flex:1}.chat-title h2{font-size:1.25rem;font-weight:700}.chat-title p{font-size:.8rem;opacity:.8}.chat-messages{padding:1rem;height:calc(100vh - 200px)}.message-content{max-width:85%}.quick-actions{padding:1rem}.quick-action-btn{font-size:.8rem;padding:.5rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1)}.chat-input{padding:1rem;background:var(--bg-secondary);border-top:1px solid var(--border-color)}.input-container{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:12px;padding:.75rem}.login-prompt{width:95%;padding:2rem}.login-btn-primary,.signup-btn{width:100%;max-width:250px}.emergency-btn{padding:.4rem .8rem;font-size:.8rem}.feedback-buttons{flex-direction:column;align-items:flex-start;gap:.25rem}.feedback-text{font-size:.75rem}.feedback-btn{font-size:.9rem;min-width:28px;height:28px}}@media (max-width: 480px){.chat-header{padding:.5rem 1rem;flex-direction:row;justify-content:space-between;align-items:center}.header-left{justify-content:flex-start;flex:1}.chat-title{display:none}.header-actions{justify-content:flex-end;flex:1;gap:.5rem}.new-chat-btn{padding:.5rem 1rem;font-size:.8rem;gap:.3rem}.message-content{max-width:90%}.input-container{gap:.5rem;padding:.5rem}.attach-btn,.voice-btn,.send-btn{padding:.4rem}.attach-btn-icon,.voice-btn-icon{width:24px;height:24px}.send-btn{display:flex!important;visibility:visible!important;opacity:1!important;min-width:32px!important;min-height:32px!important;background:var(--accent-color)!important;color:var(--bg-primary)!important;border:none!important;border-radius:8px!important}.send-btn svg{width:18px!important;height:18px!important}.attach-btn,.voice-btn{display:flex!important;visibility:visible!important;opacity:1!important;min-width:32px!important;min-height:32px!important;background:var(--bg-secondary)!important;border:1px solid var(--border-color)!important;border-radius:8px!important}.chat-input-field{display:block!important;visibility:visible!important;opacity:1!important;background:transparent!important;border:none!important;color:var(--text-primary)!important;font-size:.9rem!important;padding:.5rem!important;width:100%!important;min-width:0!important}.input-container{display:flex!important;visibility:visible!important;opacity:1!important;background:var(--bg-tertiary)!important;border:1px solid var(--border-color)!important;border-radius:12px!important;padding:.5rem!important;gap:.5rem!important;align-items:center!important;width:100%!important}.chat-input-field:focus{outline:none!important;border:none!important;box-shadow:none!important;outline-offset:0!important}.chat-input-field:focus-visible{outline:none!important;border:none!important;box-shadow:none!important}.chat-input-field:-webkit-autofill{-webkit-box-shadow:0 0 0 30px var(--bg-tertiary) inset!important;-webkit-text-fill-color:var(--text-primary)!important}.chat-input-field{-webkit-appearance:none;-moz-appearance:none;appearance:none}.input-container:focus-within{border-color:var(--border-color)!important;box-shadow:0 4px 20px #0000001a!important}}.profile-edit-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.profile-edit-modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;padding:2rem;width:90%;max-width:500px;box-shadow:0 20px 40px #00000080;animation:modalSlideIn .3s ease-out}.profile-edit-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.profile-edit-modal-header h2{color:var(--accent-color);margin:0;font-size:1.5rem;font-weight:600}.close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.5rem;border-radius:8px;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.close-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.profile-edit-content{display:flex;flex-direction:column;gap:2rem}.profile-image-section,.profile-name-section,.profile-email-section{display:flex;flex-direction:column;gap:1rem}.profile-image-section h3,.profile-name-section h3,.profile-email-section h3{color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:600}.profile-image-container{position:relative;display:flex;justify-content:center;align-items:center;width:120px;height:120px;margin:0 auto;border-radius:50%;overflow:hidden;background:var(--bg-tertiary);border:3px solid var(--border-color);transition:all .3s ease}.profile-image-container:hover{border-color:var(--accent-color)}.profile-preview{width:100%;height:100%;object-fit:cover;border-radius:50%}.image-upload-overlay{position:absolute;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;border-radius:50%}.profile-image-container:hover .image-upload-overlay{opacity:1}.upload-btn{background:var(--accent-color);border:none;color:var(--bg-primary);padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.upload-btn:hover{background:#ffe55c;transform:scale(1.05)}.image-hint{color:var(--text-secondary);font-size:.85rem;text-align:center;margin:0}.name-display-container{display:flex;align-items:center;justify-content:space-between;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.current-name{color:var(--text-primary);font-size:1rem;font-weight:500}.edit-name-btn{background:none;border:none;color:var(--accent-color);cursor:pointer;padding:.5rem;border-radius:6px;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;font-size:.9rem}.edit-name-btn:hover{background:#ffd7001a}.name-edit-container{display:flex;flex-direction:column;gap:1rem}.name-input{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:.75rem;color:var(--text-primary);font-size:1rem;transition:all .3s ease}.name-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #ffd70033}.name-edit-buttons{display:flex;gap:.5rem}.save-btn,.cancel-btn{padding:.5rem 1rem;border-radius:6px;border:none;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .3s ease}.save-btn{background:var(--accent-color);color:var(--bg-primary)}.save-btn:hover{background:#ffe55c}.cancel-btn{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.cancel-btn:hover{background:var(--bg-primary);color:var(--text-primary)}.email-display-container{display:flex;align-items:center;justify-content:space-between;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.current-email{color:var(--text-primary);font-size:1rem;font-weight:500}.edit-email-btn{background:none;border:none;color:var(--accent-color);cursor:pointer;padding:.5rem;border-radius:6px;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;font-size:.9rem}.edit-email-btn:hover{background:#ffd7001a}.email-edit-container{display:flex;flex-direction:column;gap:1rem}.email-input{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:.75rem;color:var(--text-primary);font-size:1rem;transition:all .3s ease}.email-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px #ffd70033}.email-edit-buttons{display:flex;gap:.5rem}.profile-edit-footer{margin-top:2rem;display:flex;justify-content:center}.done-btn{background:var(--accent-color);border:none;color:var(--bg-primary);padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.done-btn:hover{background:#ffe55c;transform:translateY(-2px);box-shadow:0 4px 15px #ffd7004d}@media (max-width: 480px){.profile-edit-modal{padding:1.5rem;margin:1rem}.profile-image-container{width:100px;height:100px}.name-edit-buttons,.email-edit-buttons{flex-direction:column}}.health-metrics-container{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:15px;padding:30px;box-shadow:0 8px 32px #0000001a;height:100%;overflow-y:auto}.metrics-header{text-align:center;margin-bottom:25px;padding-bottom:20px;border-bottom:2px solid #f0f2f5}.metrics-header h2{color:#2c3e50;margin:0 0 8px;font-size:1.8rem;font-weight:600}.metrics-header p{color:#7f8c8d;margin:0;font-size:1rem}.metrics-content{display:flex;flex-direction:column;gap:25px}.metrics-section h3,.conditions-section h3,.recommendations-section h3{color:#2c3e50;margin:0 0 15px;font-size:1.3rem;font-weight:600;display:flex;align-items:center;gap:8px}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.metric-card{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;padding:20px;border:1px solid #e0e6ed;transition:all .3s ease}.metric-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a}.metric-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.metric-name{font-weight:600;color:#2c3e50;font-size:1rem}.status-badge{color:#fff;padding:4px 8px;border-radius:12px;font-size:.8rem;font-weight:500;display:flex;align-items:center;gap:4px}.metric-value{font-size:1.8rem;font-weight:700;color:#2c3e50;margin-bottom:8px}.metric-range{font-size:.85rem;color:#7f8c8d;font-style:italic}.conditions-list{display:flex;flex-direction:column;gap:12px}.condition-item{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#fff5f5,#fed7d7);padding:15px;border-radius:10px;border-left:4px solid #e74c3c}.condition-name{font-weight:600;color:#2c3e50}.condition-severity{background:#e74c3c;color:#fff;padding:4px 12px;border-radius:15px;font-size:.8rem;font-weight:500}.recommendations-list{display:flex;flex-direction:column;gap:15px}.recommendation-item{display:flex;align-items:flex-start;gap:12px;background:linear-gradient(135deg,#f0f8ff,#e6f3ff);padding:18px;border-radius:12px;border-left:4px solid #667eea}.recommendation-icon{font-size:1.2rem;margin-top:2px}.recommendation-item p{margin:0;color:#2c3e50;line-height:1.5;font-size:.95rem}@media (max-width: 768px){.health-metrics-container{padding:20px}.metrics-header h2{font-size:1.5rem}.metrics-grid{grid-template-columns:1fr}.metric-card{padding:15px}.metric-value{font-size:1.5rem}.condition-item,.recommendation-item{padding:12px}}.diet-plan-container{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:15px;padding:30px;box-shadow:0 8px 32px #0000001a;height:100%;overflow-y:auto}.diet-header{text-align:center;margin-bottom:25px;padding-bottom:20px;border-bottom:2px solid #f0f2f5;position:relative}.diet-header h2{color:#2c3e50;margin:0 0 8px;font-size:1.8rem;font-weight:600}.diet-header p{color:#7f8c8d;margin:0 0 15px;font-size:1rem}.download-btn{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;border:none;border-radius:25px;padding:10px 20px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;margin:0 auto}.download-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #27ae604d}.diet-content{display:flex;flex-direction:column;gap:25px}.day-selector{display:flex;gap:10px;justify-content:center;margin-bottom:20px}.day-btn{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #e0e6ed;border-radius:20px;padding:10px 20px;font-size:.9rem;color:#2c3e50;cursor:pointer;transition:all .3s ease;font-weight:500}.day-btn:hover{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;transform:translateY(-1px)}.day-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea4d}.meal-plan{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:25px}.meal-section{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;padding:20px;border:1px solid #e0e6ed;transition:all .3s ease}.meal-section:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a}.meal-section h3{color:#2c3e50;margin:0 0 12px;font-size:1.2rem;font-weight:600;display:flex;align-items:center;gap:8px}.meal-section p{color:#2c3e50;margin:0;line-height:1.5;font-size:.95rem}.nutrition-info{background:linear-gradient(135deg,#e8f5e8,#d4edda);border-radius:12px;padding:20px;border:1px solid #c3e6cb}.nutrition-info h3{color:#2c3e50;margin:0 0 15px;font-size:1.2rem;font-weight:600;text-align:center}.nutrition-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:15px}.nutrition-item{display:flex;flex-direction:column;align-items:center;text-align:center;padding:15px;background:#fffc;border-radius:10px;border:1px solid rgba(255,255,255,.3)}.nutrition-label{font-size:.85rem;color:#7f8c8d;margin-bottom:5px;font-weight:500}.nutrition-value{font-size:1.3rem;font-weight:700;color:#27ae60}.diet-tips{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border-radius:12px;padding:20px;border:1px solid #ffeaa7}.diet-tips h3{color:#2c3e50;margin:0 0 15px;font-size:1.2rem;font-weight:600;display:flex;align-items:center;gap:8px}.diet-tips ul{margin:0;padding-left:20px;color:#2c3e50}.diet-tips li{margin-bottom:8px;line-height:1.4;font-size:.95rem}.diet-tips li:last-child{margin-bottom:0}@media (max-width: 768px){.diet-plan-container{padding:20px}.diet-header h2{font-size:1.5rem}.day-selector{flex-wrap:wrap}.day-btn{padding:8px 16px;font-size:.85rem}.meal-plan{grid-template-columns:1fr}.meal-section{padding:15px}.nutrition-grid{grid-template-columns:repeat(2,1fr)}.nutrition-item{padding:12px}.nutrition-value{font-size:1.1rem}}.auth-modal-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);animation:overlayFadeIn .3s ease-out}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.auth-modal{background:linear-gradient(135deg,#1e1e1ef2,#2a2a2af2,#1e1e1ef2);border:1px solid rgba(255,215,0,.2);border-radius:20px;padding:2.5rem;width:90%;max-width:450px;box-shadow:0 25px 50px #0009,0 0 0 1px #ffd7001a,inset 0 1px #ffffff1a;animation:modalSlideIn .4s cubic-bezier(.34,1.56,.64,1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);position:relative}.auth-modal:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,215,0,.5) 50%,transparent 100%)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.typing-hidden{opacity:0;transform:translateY(10px);transition:all .4s ease-out}.typing-visible{opacity:1;transform:translateY(0);transition:all .4s ease-out}.auth-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;position:relative}.auth-modal-header h2{color:var(--accent-color);margin:0;font-size:1.75rem;font-weight:700;text-shadow:0 0 20px rgba(255,215,0,.3);letter-spacing:-.5px}.close-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:var(--text-secondary);cursor:pointer;padding:.75rem;border-radius:12px;transition:all .3s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.close-btn:hover{background:#ffd7001a;border-color:#ffd7004d;color:var(--accent-color);transform:scale(1.05)}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.75rem;position:relative}.form-group label{color:var(--text-primary);font-size:.95rem;font-weight:600;letter-spacing:.3px;text-transform:uppercase;font-size:.8rem;color:var(--text-secondary)}.form-group input{background:#121212cc;border:2px solid rgba(255,255,255,.1);border-radius:12px;padding:1rem 1.25rem;color:var(--text-primary);font-size:1rem;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-weight:500}.form-group input::placeholder{color:var(--text-muted);opacity:.7}.form-group input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px #ffd70026,0 8px 25px #ffd7001a;background:#121212e6;transform:translateY(-1px)}.form-group input.error{border-color:var(--error-color);box-shadow:0 0 0 3px #e5393526}.error-message{color:var(--error-color);font-size:.85rem;margin-top:.25rem;font-weight:500;display:flex;align-items:center;gap:.5rem}.error-message:before{content:"⚠";font-size:.9rem}.submit-btn{background:linear-gradient(135deg,#000,#1a1a1a)!important;border:2px solid rgba(255,215,0,.3)!important;color:#fff!important;padding:1rem 1.5rem;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;margin-top:1rem;text-transform:uppercase;letter-spacing:1px;position:relative;overflow:hidden;box-shadow:0 8px 25px #0000004d,0 0 0 1px #ffd7001a}.submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,215,0,.2),transparent);transition:left .5s ease}.submit-btn:hover:before{left:100%}.submit-btn:hover{background:linear-gradient(135deg,var(--accent-color) 0%,#FFED4E 100%)!important;color:#000!important;transform:translateY(-3px);box-shadow:0 15px 35px #ffd7004d,0 0 0 1px #ffd70080;border-color:var(--accent-color)!important}.submit-btn:hover .shiny-text-container{color:#000!important}.submit-btn:active{transform:translateY(-1px);box-shadow:0 8px 20px #ffd70033}.auth-modal-footer{margin-top:2rem;text-align:center;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}.auth-modal-footer p{color:var(--text-secondary);margin:0;font-size:.95rem;font-weight:500}.toggle-btn{background:none;border:none;color:var(--accent-color);cursor:pointer;font-weight:700;text-decoration:none;transition:all .3s ease;padding:.5rem 1rem;border-radius:8px;margin-left:.5rem;position:relative;overflow:hidden}.toggle-btn:before{content:"";position:absolute;inset:0;background:#ffd7001a;transform:scaleX(0);transform-origin:right;transition:transform .3s ease}.toggle-btn:hover:before{transform:scaleX(1);transform-origin:left}.toggle-btn:hover{color:#ffed4e;text-shadow:0 0 10px rgba(255,215,0,.5)}.user-profile{display:flex;align-items:center;gap:1rem;position:relative}.user-info{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.user-name-display{color:var(--text-primary);font-weight:600;font-size:.9rem;text-align:right;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-icon-container{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.5rem;border-radius:8px;transition:all .3s ease;position:relative}.profile-icon-container:hover{background:var(--bg-tertiary)}.profile-icon{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid var(--border-color);transition:all .3s ease}.profile-icon-container:hover .profile-icon{border-color:var(--accent-color)}.dropdown-arrow{margin-top:.25rem;transition:transform .3s ease;color:var(--text-secondary)}.dropdown-arrow.rotated{transform:rotate(180deg)}.user-name{color:var(--text-primary);font-weight:600;font-size:.9rem}.user-email{color:var(--text-secondary);font-size:.8rem;opacity:.8}.user-details{display:flex;flex-direction:column;gap:.25rem}.user-role{color:var(--text-secondary);font-size:.8rem}.profile-dropdown{position:absolute;top:100%;right:0;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 10px 25px #0000004d;min-width:250px;z-index:1000;animation:dropdownSlideIn .2s ease-out;margin-top:.5rem}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-section{padding:1rem;border-bottom:1px solid var(--border-color)}.dropdown-section:last-child{border-bottom:none}.dropdown-section h4{color:var(--accent-color);margin:0 0 .75rem;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.dropdown-item{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;color:var(--text-primary);font-size:.9rem;background:none;border:none;cursor:pointer;width:100%;text-align:left;transition:all .2s ease;border-radius:6px}.dropdown-item:hover{background:var(--bg-tertiary);color:var(--accent-color)}.dropdown-item svg{color:var(--text-secondary);flex-shrink:0}.dropdown-profile-icon{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid var(--border-color);flex-shrink:0}.dropdown-item:hover svg{color:var(--accent-color)}.logout-item{color:var(--error-color)}.logout-item:hover{background:#e539351a;color:var(--error-color)}.logout-item:hover svg{color:var(--error-color)}.logout-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-size:.9rem;transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.logout-btn:hover{background:var(--error-color);color:#fff;border-color:var(--error-color)}.auth-btn{background:linear-gradient(135deg,var(--glass-bg),rgba(255,215,0,.1));border:1px solid var(--glass-border);color:#fff;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);box-shadow:var(--shadow-soft)}.auth-btn:hover{background:linear-gradient(135deg,var(--accent-color),rgba(255,215,0,.8));color:var(--bg-primary);transform:translateY(-3px);box-shadow:var(--shadow-glow);border-color:var(--accent-color)}.auth-btn:hover .shiny-text-container{color:#000!important}@media (max-width: 480px){.auth-modal{padding:2rem 1.5rem;margin:1rem;border-radius:16px;max-width:95%}.auth-modal-header h2{font-size:1.5rem}.form-group input{padding:.875rem 1rem;font-size:.95rem}.submit-btn{padding:.875rem 1.25rem;font-size:1rem}.user-profile{flex-direction:column;align-items:flex-end;gap:.5rem}.user-info{align-items:flex-end}.profile-dropdown{right:-1rem;min-width:200px}}@media (max-width: 360px){.auth-modal{padding:1.5rem 1rem;margin:.5rem}.auth-modal-header h2{font-size:1.3rem}.form-group label{font-size:.75rem}.form-group input{padding:.75rem .875rem;font-size:.9rem}}
