@import"https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;700&display=swap";.page-container{font-family:Noto Sans SC,sans-serif;background-color:#f3f4f6;display:flex;justify-content:center;align-items:center;min-height:100vh;color:#1f2937;padding:20px}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}[data-v-dd587c80]:root{--primary-blue: #0288d1;--light-blue: #03a9f4;--text-dark: #01579b;--text-light: #e1f5fe;--accent-blue: #81d4fa}[data-v-dd587c80]{box-sizing:border-box;margin:0;padding:0}body[data-v-dd587c80]{font-family:Segoe UI,Microsoft YaHei,sans-serif;overflow:hidden;height:100vh;width:100vw}.login-container[data-v-dd587c80]{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#e0f7fa,#bbdefb,#e0f7fa);background-size:200% 200%;animation:gradientAnimation-dd587c80 15s ease infinite;position:relative;overflow:hidden}@keyframes gradientAnimation-dd587c80{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.tech-bg[data-v-dd587c80]{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.tech-line[data-v-dd587c80]{position:absolute;height:1px;background:linear-gradient(90deg,transparent,var(--light-blue),var(--accent-blue),var(--light-blue),transparent);width:200%;top:20%;left:-100%;animation:lineFlow-dd587c80 18s linear infinite;opacity:.15}.tech-line[data-v-dd587c80]:nth-child(2){top:50%;animation-duration:22s;animation-delay:3s}.tech-line[data-v-dd587c80]:nth-child(3){top:80%;animation-duration:26s;animation-delay:7s}@keyframes lineFlow-dd587c80{0%{transform:translate(0)}to{transform:translate(100%)}}.login-card[data-v-dd587c80]{background:#fffffff2;border-radius:16px;box-shadow:0 8px 30px #0288d126,0 0 0 1px #03a9f414;padding:40px 35px;width:90%;max-width:450px;z-index:10;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);position:relative;overflow:hidden}.login-card[data-v-dd587c80]:before{content:"";position:absolute;top:-70%;left:-50%;width:200%;height:200%;background:conic-gradient(#03a9f40d,#0288d114,#b3e5fc0f,#03a9f40d);animation:rotateAnimation-dd587c80 40s linear infinite;z-index:-1}@keyframes rotateAnimation-dd587c80{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.logo[data-v-dd587c80]{text-align:center;margin-bottom:32px}.logo .ai-icon[data-v-dd587c80]{margin:0 auto 15px;filter:drop-shadow(0 2px 5px rgba(2,136,209,.2));transition:transform .5s ease}.logo:hover .ai-icon[data-v-dd587c80]{transform:scale(1.1) rotate(5deg)}.logo h1[data-v-dd587c80]{font-size:28px;font-weight:700;color:var(--text-dark);letter-spacing:.5px;background:linear-gradient(135deg,#0288d1,#00bcd4);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 1px 2px rgba(2,136,209,.1)}.login-form[data-v-dd587c80]{display:flex;flex-direction:column;gap:20px}.input-group[data-v-dd587c80]{position:relative}.input-icon[data-v-dd587c80]{position:absolute;left:15px;top:50%;transform:translateY(-50%);z-index:2}.password-toggle[data-v-dd587c80]{position:absolute;right:15px;top:50%;transform:translateY(-50%);cursor:pointer;z-index:2;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.password-toggle[data-v-dd587c80]:hover{background:#0288d10d}input[data-v-dd587c80]{width:100%;padding:14px 14px 14px 45px;font-size:16px;font-weight:500;border:1px solid rgba(3,169,244,.2);border-radius:50px;background:#f0f8ffa6;box-shadow:inset 0 1px 3px #0000000d;color:#01579b;transition:all .3s ease;outline:none;position:relative;z-index:1}input[data-v-dd587c80]:focus{border-color:var(--light-blue);box-shadow:0 0 0 3px #03a9f433,inset 0 1px 2px #0000000d;background:#ffffffe6}input[data-v-dd587c80]::placeholder{color:#0277bd80;font-weight:400}.login-btn[data-v-dd587c80]{padding:14px 20px;font-size:16px;font-weight:600;background:linear-gradient(135deg,#0288d1,#00bcd4);color:#fff;border:none;border-radius:50px;cursor:pointer;transition:all .3s ease;margin-top:10px;box-shadow:0 4px 15px #0288d14d;position:relative;overflow:hidden;outline:none}.login-btn[data-v-dd587c80]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #0288d166}.login-btn[data-v-dd587c80]:active:not(:disabled){transform:translateY(0)}.login-btn[data-v-dd587c80]:disabled{background:#94a3b8;cursor:not-allowed}.login-btn[data-v-dd587c80]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:shine-dd587c80 1.8s infinite}@keyframes shine-dd587c80{to{left:100%}}.error-message[data-v-dd587c80]{padding:14px 20px;background-color:#f4433614;color:#d32f2f;border-radius:10px;font-size:14px;font-weight:500;text-align:center;border:1px solid rgba(244,67,54,.15);margin-top:-5px;transition:all .3s ease}[data-v-adec65d3]:root{--primary-color: #10b981;--bg-color: #f3f4f6}.container[data-v-adec65d3]{background-color:#fff;width:100%;max-width:520px;padding:2.5rem;border-radius:20px;box-shadow:0 20px 40px -5px #0000000d;transition:max-width .4s ease,height .4s ease;position:relative;box-sizing:border-box}.container.nutrition-mode[data-v-adec65d3]{max-width:900px}.main-content-wrapper[data-v-adec65d3]{display:flex;gap:2rem;align-items:flex-start}.left-panel[data-v-adec65d3]{flex:1;width:100%}.right-panel[data-v-adec65d3]{flex:1.2;height:500px;border-left:1px solid #eee;padding-left:2rem;display:flex;flex-direction:column}.chat-container[data-v-adec65d3]{flex:1;overflow-y:auto;padding-right:10px;display:flex;flex-direction:column;gap:15px}.chat-container[data-v-adec65d3]::-webkit-scrollbar{width:6px}.chat-container[data-v-adec65d3]::-webkit-scrollbar-thumb{background-color:#e5e7eb;border-radius:3px}.chat-message[data-v-adec65d3]{display:flex;gap:10px;align-items:flex-start}.chat-message.user[data-v-adec65d3]{flex-direction:row-reverse}.avatar[data-v-adec65d3]{width:36px;height:36px;background:#f3f4f6;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}.message-content[data-v-adec65d3]{background:#f9fafb;padding:12px 16px;border-radius:2px 12px 12px;max-width:85%;font-size:.95rem;line-height:1.6;color:#374151}.chat-message.user .message-content[data-v-adec65d3]{background:#ecfdf5;border-radius:12px 2px 12px 12px}.msg-image img[data-v-adec65d3]{max-width:100%;border-radius:8px;margin-bottom:8px;border:1px solid rgba(0,0,0,.1)}.empty-chat[data-v-adec65d3]{text-align:center;color:#9ca3af;margin-top:40px}.typing span[data-v-adec65d3]{display:inline-block;width:6px;height:6px;background-color:#9ca3af;border-radius:50%;margin:0 2px;animation:bounce-adec65d3 1.4s infinite ease-in-out both}.typing span[data-v-adec65d3]:nth-child(1){animation-delay:-.32s}.typing span[data-v-adec65d3]:nth-child(2){animation-delay:-.16s}@keyframes bounce-adec65d3{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.header[data-v-adec65d3]{display:flex;justify-content:space-between;align-items:center;padding:0 10px 15px;margin-bottom:1.5rem;border-bottom:1px solid #eee}.title[data-v-adec65d3]{flex:1}.user-info[data-v-adec65d3]{display:flex;align-items:center;gap:15px;font-weight:500;color:#444}.logout-btn[data-v-adec65d3]{padding:8px 16px;background-color:#f8f9fa;color:#4a6ef5;border:1px solid #ddd;border-radius:8px;cursor:pointer}.logout-btn[data-v-adec65d3]:hover{background-color:#eef2ff}h1[data-v-adec65d3]{text-align:center;margin-bottom:2rem;font-size:1.5rem;font-weight:700;color:#111827}.mode-switch[data-v-adec65d3]{display:flex;background:#f1f5f9;padding:5px;border-radius:14px;margin-bottom:2rem;position:relative;-webkit-user-select:none;user-select:none}.mode-switch input[data-v-adec65d3]{display:none}.mode-switch label[data-v-adec65d3]{flex:1;text-align:center;padding:12px;cursor:pointer;z-index:2;font-weight:600;color:#6b7280;transition:color .3s ease}.mode-switch input:checked+label[data-v-adec65d3]{color:#10b981}.glider[data-v-adec65d3]{position:absolute;height:calc(100% - 10px);background-color:#fff;z-index:1;border-radius:10px;box-shadow:0 4px 6px -1px #0000001a;transition:transform .3s cubic-bezier(.4,0,.2,1);top:5px;left:5px}.upload-box[data-v-adec65d3]{border:2px dashed #e5e7eb;border-radius:16px;height:160px;display:flex;flex-direction:column;justify-content:center;align-items:center;cursor:pointer;transition:all .3s ease;margin-bottom:1rem;background:#fafafa;position:relative;overflow:hidden}.upload-box[data-v-adec65d3]:hover{border-color:#10b981;background:#ecfdf5}.upload-icon[data-v-adec65d3]{font-size:2rem;color:#10b981;margin-bottom:.5rem}.upload-text[data-v-adec65d3]{text-align:center;color:#6b7280;font-size:.9rem}.upload-preview[data-v-adec65d3]{width:100%;height:100%;object-fit:cover;position:absolute}.clear-btn[data-v-adec65d3]{position:absolute;top:5px;right:5px;background:#00000080;color:#fff;border-radius:50%;width:24px;height:24px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10}.input-group[data-v-adec65d3]{position:relative}.input-tip[data-v-adec65d3]{font-size:.75rem;color:#9ca3af;text-align:right;margin-top:4px}textarea[data-v-adec65d3]{width:100%;padding:16px;border:1px solid #e5e7eb;border-radius:14px;resize:none;height:100px;font-family:inherit;font-size:1rem;box-sizing:border-box;background:#fff}textarea[data-v-adec65d3]:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 4px #10b9811a}.btn-submit[data-v-adec65d3]{width:100%;padding:14px;background-color:#10b981;color:#fff;border:none;border-radius:14px;font-size:1rem;font-weight:600;cursor:pointer;margin-top:1rem;transition:background .3s}.btn-submit[data-v-adec65d3]:hover:not(:disabled){background-color:#059669}.btn-submit[data-v-adec65d3]:disabled{background-color:#9ca3af;cursor:not-allowed}.result-area[data-v-adec65d3]{margin-top:2rem;border-top:1px solid #eee;padding-top:1rem}.result-content img[data-v-adec65d3],.result-content video[data-v-adec65d3]{width:100%;border-radius:12px;box-shadow:0 4px 6px #0000001a}.error-message[data-v-adec65d3]{margin-top:1rem;padding:10px;background-color:#fee2e2;color:#ef4444;border-radius:8px;font-size:.9rem}
