@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";:root{--bg-color:#040d12;--panel-bg:#0c1e2499;--panel-border:#22d3ee26;--text-main:#f8fafc;--text-muted:#94a3b8;--accent-primary:#06b6d4;--accent-gradient:linear-gradient(135deg, #14b8a6, #22d3ee);--accent-glow:#22d3ee66;--user-msg-bg:linear-gradient(135deg, #14b8a6d9, #22d3eed9);--ai-msg-bg:#0f232abf}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-main);-webkit-font-smoothing:antialiased;width:100vw;height:100vh;font-family:Outfit,-apple-system,sans-serif;position:relative;overflow:hidden}body:before,body:after{content:"";filter:blur(100px);z-index:-1;opacity:.4;pointer-events:none;border-radius:50%;animation:20s ease-in-out infinite alternate float;position:fixed}body:before{background:radial-gradient(circle,#14b8a640 0%,#0000 70%);width:60vw;height:60vw;top:-20%;left:-10%}body:after{background:radial-gradient(circle,#22d3ee33 0%,#0000 70%);width:70vw;height:70vw;animation-delay:-5s;bottom:-20%;right:-10%}@keyframes float{0%{transform:translate(0)scale(1)}50%{transform:translate(5%,10%)scale(1.1)}to{transform:translate(-5%,-5%)scale(.9)}}#root{width:100%;height:100%}.glass-panel{background:var(--panel-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--panel-border);box-shadow:0 8px 32px #0000004d}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#fff3}@keyframes slideUpFade{0%{opacity:0;transform:translateY(15px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes pulseGlow{0%{box-shadow:0 0 10px var(--accent-glow)}50%{box-shadow:0 0 20px var(--accent-glow), 0 0 40px #a855f733}to{box-shadow:0 0 10px var(--accent-glow)}}.app-container{gap:1.5rem;width:100vw;height:100vh;padding:1.5rem;display:flex;overflow:hidden}.sidebar{background:var(--panel-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--panel-border);border-radius:24px;flex-direction:column;width:300px;height:100%;padding:1.5rem;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 8px 32px #0000004d}.new-chat-btn{border:1px solid var(--panel-border);color:var(--text-main);cursor:pointer;background:0 0;border-radius:12px;align-items:center;gap:.75rem;margin-bottom:2rem;padding:.8rem 1.2rem;font-weight:500;transition:all .2s;display:flex}.new-chat-btn:hover{background:#ffffff0d;transform:translateY(-1px)}.new-chat-btn.primary{background:var(--accent-gradient);color:#fff;border:none;border-radius:999px;box-shadow:0 4px 15px #8b5cf64d}.new-chat-btn.primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #06b6d466}.history-list{flex-direction:column;flex-grow:1;gap:.5rem;display:flex;overflow-y:auto}.history-item{color:var(--text-muted);cursor:pointer;border-radius:8px;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.9rem;transition:all .2s;display:flex}.history-item:hover{color:var(--text-main);background:#ffffff0d}.history-item.active{background:var(--panel-bg);color:var(--text-main);border:1px solid var(--panel-border)}.chat-container{background:var(--panel-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--panel-border);border-radius:24px;flex-direction:column;flex-grow:1;align-items:center;height:100%;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 32px #0000004d}.chat-inner{flex-direction:column;width:100%;max-width:860px;height:100%;display:flex}.chat-header{border-bottom:1px solid var(--panel-border);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);z-index:10;background:#14141c66;justify-content:flex-start;align-items:center;padding:1.5rem 2rem;display:flex}.chat-header h1{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.25rem;font-weight:700}.messages-area{flex-direction:column;flex:1;align-items:center;gap:1.5rem;padding:2rem 2rem 8rem;display:flex;overflow-y:auto}.typing-indicator{margin-left:4px;display:inline-block}.typing-indicator span{opacity:0;animation:1s infinite typing}.typing-indicator span:first-child{animation-delay:.1s}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.3s}@keyframes typing{0%,to{opacity:0}50%{opacity:1}}.debug-container{margin-top:.75rem;position:relative}.info-btn{color:var(--accent-primary);cursor:pointer;background:#3b82f61f;border:1px solid #3b82f647;border-radius:12px;align-items:center;gap:.35rem;margin-top:.5rem;padding:.35rem .75rem;font-size:.75rem;font-weight:500;transition:all .2s;display:inline-flex}.info-btn:hover{border-color:var(--accent-primary);background:#3b82f62e;transform:translateY(-1px)}.debug-panel{background:var(--surface-hover);border:1px solid var(--border);border-radius:12px;width:100%;max-width:600px;margin-top:.5rem;padding:1rem;font-size:.8rem}.debug-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;display:flex}.debug-header h4{color:var(--text);margin:0;font-size:.85rem;font-weight:500}.debug-header button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:2px}.chunks-list{flex-direction:column;gap:.75rem;max-height:300px;padding-right:.5rem;display:flex;overflow-y:auto}.chunk-card{background:#0003;border:1px solid #ffffff0d;border-radius:8px;padding:.75rem}.chunk-meta{justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.7rem;display:flex}.chunk-source{color:var(--accent-primary);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.25rem;max-width:70%;font-weight:500;display:flex;overflow:hidden}.chunk-score{color:var(--text-muted);background:#ffffff0d;border-radius:4px;padding:2px 6px}.chunk-text{color:var(--text-secondary);-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;margin:0;line-height:1.4;display:-webkit-box;overflow:hidden}.message{align-self:flex-start;gap:.75rem;width:100%;max-width:720px;animation:.4s ease-out forwards slideUpFade;display:flex}.message.user{flex-direction:row-reverse;align-self:flex-end}.avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.avatar.user{background:var(--accent-gradient)}.avatar.ai{background:var(--panel-bg);border:1px solid var(--panel-border)}.message-content{width:100%;padding:1rem 1.25rem;font-size:.95rem;line-height:1.6}.message.user .message-content{background:var(--user-msg-bg);color:#fff;border-radius:24px 24px 0;box-shadow:0 4px 15px #8b5cf633}.message.ai .message-content{background:var(--ai-msg-bg);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:24px 24px 24px 0}.input-container{z-index:20;background:0 0;border:none;width:calc(100% - 4rem);max-width:800px;padding:0;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.input-box{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#0a0a0fbf;border:1px solid #ffffff26;border-radius:999px;align-items:center;gap:1rem;padding:.75rem 1.25rem;transition:all .3s;display:flex;box-shadow:0 10px 40px #00000080}.input-box:focus-within{border-color:var(--accent-primary);box-shadow:0 10px 40px #8b5cf640}.chat-input{color:var(--text-main);resize:none;background:0 0;border:none;outline:none;flex-grow:1;height:24px;max-height:120px;font-family:inherit;font-size:1rem}.chat-input::placeholder{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.send-btn{background:var(--accent-gradient);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:transform .2s,box-shadow .2s;display:flex}.send-btn:hover{transform:scale(1.05);box-shadow:0 4px 15px #06b6d466}.send-btn:disabled{background:var(--panel-border);cursor:not-allowed;transform:none}.login-container{justify-content:center;align-items:center;width:100vw;height:100vh;display:flex}.login-box{text-align:center;border-radius:24px;flex-direction:column;align-items:center;gap:2.5rem;max-width:480px;padding:3rem;animation:.6s ease-out slideUpFade;display:flex}.login-header h1{background:0 0;-webkit-background-clip:initial;background-clip:initial;-webkit-text-fill-color:initial;color:var(--text-main);margin:1rem 0 .5rem;font-size:1.8rem}.login-header p{color:var(--text-muted);line-height:1.6}.logo-pulse{background:var(--accent-primary);box-shadow:none;border-radius:50%;padding:1.5rem;animation:none;display:inline-flex}.google-btn{width:100%;color:var(--text-main);border:1px solid var(--panel-border);cursor:pointer;box-shadow:none;background:#3b82f61f;border-radius:12px;justify-content:center;align-items:center;gap:1rem;padding:1rem 1.5rem;font-size:1.05rem;font-weight:500;transition:transform .2s,background .2s,border-color .2s;display:flex}.google-btn:hover{background:#3b82f62e;border-color:#3b82f673;transform:translateY(-2px)}.google-icon{width:24px;height:24px}.login-icon{color:#666;margin-left:auto}.user-profile-block{border-top:1px solid var(--panel-border);justify-content:space-between;align-items:center;margin-top:auto;padding-top:1rem;display:flex}.user-info{align-items:center;gap:.75rem;display:flex;overflow:hidden}.profile-pic{object-fit:cover;border:2px solid var(--accent-primary);border-radius:50%;width:36px;height:36px}.user-details{flex-direction:column;display:flex}.message-content{color:var(--text-primary);word-wrap:break-word;flex:1;margin-top:.2rem;font-size:.95rem;line-height:1.5}.markdown-prose{flex-direction:column;gap:.75rem;display:flex}.markdown-prose p{margin:0;line-height:1.6}.markdown-prose ul,.markdown-prose ol{margin:0;padding-left:1.5rem}.markdown-prose li{margin-bottom:.25rem}.markdown-prose strong{color:var(--accent-primary);font-weight:600}.user-email{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:120px;font-size:.75rem;overflow:hidden}.logout-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.5rem;transition:all .2s}.logout-btn:hover{color:#ef4444;background:#ef44441a}.attach-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:.5rem;transition:color .2s;display:flex}.attach-btn:hover{color:var(--accent-primary)}.attach-btn:disabled{cursor:not-allowed;opacity:.5}.spin{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.attachment-preview{background:var(--panel-bg);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid var(--accent-primary);color:var(--accent-primary);border-radius:12px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.85rem;animation:.3s ease-out slideUpFade;display:inline-flex;position:absolute;bottom:130%;left:0}.attachment-preview button{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;margin-left:.5rem}.attachment-preview button:hover{opacity:1}.attach-actions{align-items:center;gap:.25rem;display:flex}.url-input-popover{background:var(--panel-bg);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid var(--accent-primary);border-radius:12px;align-items:center;gap:.5rem;width:max-content;padding:.75rem 1rem;animation:.3s ease-out slideUpFade;display:flex;position:absolute;bottom:130%;left:0;box-shadow:0 4px 15px #0003}.url-input-popover input{color:var(--text-main);background:0 0;border:none;outline:none;min-width:250px;font-family:inherit}.primary-sm{background:var(--accent-gradient);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:.4rem .8rem;font-size:.8rem;font-weight:500}.close-sm{color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:.2rem;display:flex}.close-sm:hover{color:#ef4444}.document-widget{border-top:1px solid #ffffff0d;flex-direction:column;flex-grow:1;margin-top:1rem;padding-top:1rem;display:flex;overflow:hidden}.widget-title{text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);margin-bottom:.5rem;font-size:.8rem;font-weight:600}.document-list{flex-direction:column;gap:.5rem;display:flex;overflow-y:auto}.document-item{background:#ffffff08;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem;transition:all .2s;display:flex}.document-item:hover{background:#ffffff14}.document-item:hover .doc-delete-btn{opacity:1}.processing-badge{color:var(--warning,#eab308);background:#eab3081a;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;margin-right:.5rem;padding:3px;display:flex}.doc-delete-btn{cursor:pointer;color:var(--text-muted);opacity:0;background:0 0;border:none;border-radius:4px;flex-shrink:0;align-items:center;padding:2px;transition:all .15s;display:flex}.doc-delete-btn:hover{color:#f87171;background:#f871711f}.doc-delete-btn:disabled{cursor:not-allowed;opacity:.5}.doc-icon{color:var(--accent-primary);flex-shrink:0}.doc-name{color:var(--text-main);white-space:nowrap;text-overflow:ellipsis;flex-grow:1;font-size:.85rem;overflow:hidden}.download-btn{color:var(--text-muted);border-radius:4px;justify-content:center;align-items:center;padding:.2rem;display:flex}.download-btn:hover{color:var(--text-main);background:#ffffff1a}@media screen and (width<=800px){.app-container{flex-direction:column;gap:.5rem;padding:.5rem}.sidebar{border-radius:16px;width:100%;height:auto;max-height:25vh;padding:1rem}.chat-container{border-radius:16px;height:70vh}.chat-header{padding:1rem}.messages-area{padding:1rem 1rem 6.5rem}.message{max-width:95%}.input-container{width:calc(100% - 1.5rem);bottom:.75rem}.input-box{gap:.5rem;padding:.5rem .75rem}.chat-input{font-size:.95rem}.send-btn{width:34px;height:34px}}@media screen and (width>=801px) and (width<=1100px){.sidebar{width:250px}.input-container{width:calc(100% - 2rem)}}
