@import "https://fonts.googleapis.com/css2?family=Sora:wght@300;400;500;600&family=JetBrains+Mono:wght@400;500&display=swap";:root{--bg:#0a0a0b;--bg-2:#111114;--bg-3:#18181d;--bg-4:#1f1f26;--border:#2a2a35;--border-2:#3a3a48;--text:#e8e8f0;--text-2:#9898b0;--text-3:#606075;--accent:#6366f1;--accent-2:#818cf8;--accent-glow:#6366f126;--green:#22c55e;--red:#ef4444;--radius:10px;--radius-lg:16px;--sidebar-w:256px;--font:"Sora", sans-serif;--mono:"JetBrains Mono", monospace}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{background:var(--bg);height:100%;color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:var(--font);background:0 0;border:none}textarea{font-family:var(--font)}.app{height:100dvh;display:flex;overflow:hidden}.app-loading{background:var(--bg);justify-content:center;align-items:center;height:100dvh;display:flex}.app-loading-icon{color:var(--accent);font-size:2.5rem;animation:1.4s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.9)}}.sidebar-toggle{z-index:300;border:1px solid var(--border);background:var(--bg-2);width:36px;height:36px;color:var(--text-2);border-radius:10px;justify-content:center;align-items:center;transition:background .15s,border-color .15s;display:none;position:fixed;top:14px;left:14px}.sidebar-toggle:hover{background:var(--bg-3);color:var(--text);border-color:var(--border-2)}.sidebar-backdrop{z-index:250;opacity:0;pointer-events:none;background:#000000a6;transition:opacity .22s;display:none;position:fixed;inset:0}.sidebar-backdrop.is-visible{opacity:1;pointer-events:auto}.auth-page{background:var(--bg);justify-content:center;align-items:center;min-height:100dvh;padding:24px 16px;display:flex;position:relative;overflow:hidden}.auth-glow{pointer-events:none;background:radial-gradient(circle,#6366f11f 0%,#0000 70%);border-radius:50%;width:600px;height:600px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.auth-card{z-index:1;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;width:380px;max-width:100%;padding:48px 40px;position:relative;box-shadow:0 0 60px #00000080,0 0 0 1px #ffffff08}.auth-logo{justify-content:center;align-items:center;gap:10px;margin-bottom:12px;display:flex}.auth-logo-icon{color:var(--accent);font-size:1.8rem}.auth-logo-text{letter-spacing:-.02em;color:var(--text);font-size:1.5rem;font-weight:600}.auth-tagline{color:var(--text-2);margin-bottom:36px;font-size:.875rem}.auth-buttons{flex-direction:column;gap:12px;margin-bottom:28px;display:flex}.auth-btn{border-radius:var(--radius);border:1px solid var(--border);justify-content:center;align-items:center;gap:10px;width:100%;padding:12px 20px;font-size:.9rem;font-weight:500;transition:all .15s;display:flex}.auth-btn--github{background:var(--bg-3);color:var(--text)}.auth-btn--github:hover{background:var(--bg-4);border-color:var(--border-2)}.auth-btn--google{background:var(--bg-3);color:var(--text)}.auth-btn--google:hover{background:var(--bg-4);border-color:var(--border-2)}.auth-footer{color:var(--text-3);font-size:.78rem}.sidebar{width:var(--sidebar-w);min-width:var(--sidebar-w);background:var(--bg-2);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;height:100dvh;display:flex;overflow:hidden}.sidebar-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 16px 14px;display:flex}.sidebar-logo{align-items:center;gap:8px;display:flex}.sidebar-logo-icon{color:var(--accent);font-size:1.2rem}.sidebar-logo-text{letter-spacing:-.01em;font-size:1rem;font-weight:600}.new-chat-btn{border:1px solid var(--border);background:var(--bg-3);width:30px;height:30px;color:var(--text-2);border-radius:8px;justify-content:center;align-items:center;transition:all .15s;display:flex}.new-chat-btn:hover{background:var(--bg-4);color:var(--text);border-color:var(--border-2)}.sidebar-section-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);flex-shrink:0;padding:14px 16px 6px;font-size:.7rem;font-weight:600}.sidebar-conversations{scrollbar-width:thin;scrollbar-color:var(--border) transparent;-webkit-overflow-scrolling:touch;flex:1;padding:4px 8px;overflow-y:auto}.sidebar-conversations::-webkit-scrollbar{width:4px}.sidebar-conversations::-webkit-scrollbar-track{background:0 0}.sidebar-conversations::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.sidebar-loading{flex-direction:column;gap:6px;padding:4px;display:flex}.sidebar-skeleton{border-radius:var(--radius);background:linear-gradient(90deg, var(--bg-3) 0%, var(--bg-4) 50%, var(--bg-3) 100%);background-size:200%;height:48px;animation:1.5s ease-in-out infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.sidebar-empty{text-align:center;color:var(--text-3);padding:24px 12px;font-size:.82rem}.sidebar-item{border-radius:var(--radius);cursor:pointer;-webkit-tap-highlight-color:transparent;justify-content:space-between;align-items:center;gap:6px;margin-bottom:2px;padding:9px 10px;transition:background .12s;display:flex}.sidebar-item:hover{background:var(--bg-3)}.sidebar-item--active{background:var(--accent-glow);border:1px solid #6366f133}.sidebar-item-content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.sidebar-item-title{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;font-weight:400;overflow:hidden}.sidebar-item-time{color:var(--text-3);font-size:.7rem}.sidebar-delete-btn{opacity:0;color:var(--text-3);border-radius:6px;flex-shrink:0;padding:4px;transition:all .12s}.sidebar-item:hover .sidebar-delete-btn{opacity:1}.sidebar-delete-btn:hover{color:var(--red);background:#ef44441f}.sidebar-user{border-top:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:14px 12px;display:flex}.sidebar-user-info{align-items:center;gap:10px;min-width:0;display:flex}.sidebar-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:30px;height:30px}.sidebar-avatar-placeholder{background:var(--accent-glow);width:30px;height:30px;color:var(--accent-2);border:1px solid #6366f14d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:600;display:flex}.sidebar-user-details{flex-direction:column;min-width:0;display:flex}.sidebar-user-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;font-weight:500;overflow:hidden}.sidebar-user-email{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;overflow:hidden}.sidebar-signout-btn{color:var(--text-3);border-radius:8px;flex-shrink:0;padding:6px;transition:all .12s}.sidebar-signout-btn:hover{background:var(--bg-4);color:var(--text)}.main-content{scrollbar-width:thin;scrollbar-color:var(--border) transparent;-webkit-overflow-scrolling:touch;flex:1;min-width:0;overflow-y:auto}.main-content::-webkit-scrollbar{width:4px}.main-content::-webkit-scrollbar-track{background:0 0}.main-content::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.home-page{justify-content:center;align-items:center;min-height:100%;padding:60px 24px;display:flex}.home-content{text-align:center;flex-direction:column;align-items:center;gap:0;width:100%;max-width:680px;display:flex}.home-greeting{margin-bottom:14px}.home-greeting-text{color:var(--text-2);font-size:.9rem}.home-greeting-name{color:var(--accent-2);font-weight:500}.home-headline{letter-spacing:-.03em;color:var(--text);margin-bottom:36px;font-size:2.4rem;font-weight:600;line-height:1.2}.home-searchbar{width:100%;margin-bottom:24px}.home-suggestions{flex-wrap:wrap;justify-content:center;gap:8px;width:100%;display:flex}.suggestion-chip{border:1px solid var(--border);background:var(--bg-2);color:var(--text-2);text-align:left;-webkit-tap-highlight-color:transparent;border-radius:100px;padding:8px 14px;font-size:.8rem;transition:all .15s}.suggestion-chip:hover{border-color:var(--accent);color:var(--text);background:var(--accent-glow)}.searchbar{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-lg);align-items:flex-end;gap:10px;padding:12px 12px 12px 18px;transition:border-color .15s,box-shadow .15s;display:flex}.searchbar:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.searchbar-input{color:var(--text);resize:none;background:0 0;border:none;outline:none;flex:1;min-width:0;max-height:200px;font-size:.95rem;line-height:1.5}.searchbar-input::placeholder{color:var(--text-3)}.searchbar-btn{background:var(--accent);color:#fff;-webkit-tap-highlight-color:transparent;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:all .15s;display:flex}.searchbar-btn:hover:not(:disabled){background:var(--accent-2);transform:scale(1.04)}.searchbar-btn:disabled{opacity:.4;cursor:not-allowed}.searchbar-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.result-view{max-width:780px;margin:0 auto;padding:40px 32px 80px}.result-query{align-items:flex-start;gap:12px;margin-bottom:32px;display:flex}.result-query-icon{color:var(--accent);flex-shrink:0;margin-top:2px;font-size:1.3rem}.result-query-text{letter-spacing:-.025em;color:var(--text);word-break:break-word;font-size:1.6rem;font-weight:600;line-height:1.3}.result-layout{gap:28px;display:flex}.result-main{flex-direction:column;flex:1;gap:24px;min-width:0;display:flex}.sources-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);align-items:center;gap:6px;margin-bottom:12px;font-size:.75rem;font-weight:600;display:flex}.sources-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;display:grid}.source-card{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);-webkit-tap-highlight-color:transparent;align-items:center;gap:8px;padding:9px 10px;text-decoration:none;transition:all .15s;display:flex;overflow:hidden}.source-card:hover{border-color:var(--border-2);background:var(--bg-3)}.source-index{color:var(--accent-2);font-size:.68rem;font-weight:600;font-family:var(--mono);flex-shrink:0;width:14px}.source-favicon{border-radius:3px;flex-shrink:0;width:14px;height:14px}.source-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.source-title{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;font-weight:500;overflow:hidden}.source-host{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:.68rem;overflow:hidden}.source-arrow{color:var(--text-3);opacity:0;flex-shrink:0;transition:opacity .15s}.source-card:hover .source-arrow{opacity:1}.answer-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);align-items:center;gap:8px;margin-bottom:14px;font-size:.75rem;font-weight:600;display:flex}.answer-label-dot{background:var(--accent);width:7px;height:7px;box-shadow:0 0 8px var(--accent);border-radius:50%;flex-shrink:0}.answer-error{color:var(--red);border-radius:var(--radius);background:#ef444414;border:1px solid #ef444433;align-items:center;gap:8px;padding:12px 16px;font-size:.875rem;display:flex}.answer-thinking{gap:5px;padding:8px 0;display:flex}.thinking-dot{background:var(--accent);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite bounce}.thinking-dot:nth-child(2){animation-delay:.2s}.thinking-dot:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-6px)}}.answer-body{color:var(--text);overflow-wrap:break-word;word-break:break-word;font-size:.95rem;line-height:1.75}.answer-p{margin-bottom:10px}.answer-h2{color:var(--text);letter-spacing:-.01em;margin:20px 0 8px;font-size:1.1rem;font-weight:600}.answer-h3{color:var(--text);margin:16px 0 6px;font-size:1rem;font-weight:600}.answer-list-item{align-items:flex-start;gap:10px;margin-bottom:6px;display:flex}.answer-list-num{color:var(--accent-2);font-family:var(--mono);flex-shrink:0;min-width:20px;margin-top:1px;font-size:.85rem;font-weight:500}.answer-bullet{color:var(--accent);flex-shrink:0;margin-top:4px;font-size:.75rem}.answer-code{font-family:var(--mono);background:var(--bg-3);border:1px solid var(--border);color:var(--accent-2);word-break:break-all;border-radius:5px;padding:1px 6px;font-size:.85em}.answer-spacer{height:6px}.answer-cursor{background:var(--accent);vertical-align:text-bottom;width:2px;height:1em;margin-left:2px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.followups-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);align-items:center;gap:6px;margin-bottom:12px;font-size:.75rem;font-weight:600;display:flex}.followups-list{flex-direction:column;gap:6px;display:flex}.followup-btn{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-2);text-align:left;-webkit-tap-highlight-color:transparent;align-items:center;gap:10px;width:100%;padding:11px 14px;font-size:.875rem;transition:all .15s;display:flex}.followup-btn:hover{background:var(--accent-glow);color:var(--text);border-color:#6366f14d}.followup-arrow{color:var(--accent);flex-shrink:0;margin-left:auto;font-size:.85rem;transition:transform .15s}.followup-btn:hover .followup-arrow{transform:translate(2px)}.followup-input-section{padding-top:8px}@media (width<=1023px){.sidebar-toggle{display:flex}.sidebar-backdrop{display:block}.sidebar{z-index:260;height:100dvh;transition:transform .26s cubic-bezier(.4,0,.2,1);position:fixed;top:0;left:0;transform:translate(-100%);box-shadow:8px 0 40px #00000080}.sidebar.is-open{transform:translate(0)}.main-content{width:100%}.home-page,.result-view{padding-top:64px}}@media (width<=767px){html,body,#root{font-size:14px}.auth-page{align-items:flex-start;padding-top:48px}.auth-glow{width:340px;height:340px}.auth-card{width:100%;max-width:440px;padding:36px 28px}.auth-tagline{margin-bottom:28px}.home-page{align-items:flex-start;padding:72px 20px 48px}.home-content{max-width:100%}.home-headline{margin-bottom:28px;font-size:1.9rem}.home-searchbar{margin-bottom:20px}.suggestion-chip{padding:7px 12px;font-size:.78rem}.searchbar{border-radius:14px;padding:10px 10px 10px 14px}.searchbar-input{font-size:.9rem}.result-view{padding:72px 20px}.result-query{gap:10px;margin-bottom:24px}.result-query-text{font-size:1.3rem}.result-layout{flex-direction:column;gap:20px}.sources-grid{grid-template-columns:repeat(2,1fr)}.answer-body{font-size:.92rem;line-height:1.7}.answer-h2{font-size:1.05rem}.followup-btn{padding:10px 12px;font-size:.84rem}}@media (width<=479px){.auth-card{border-radius:14px;padding:32px 20px}.auth-logo-text{font-size:1.3rem}.sidebar{width:100vw;min-width:unset}.sidebar-toggle{border-radius:9px;width:34px;height:34px;top:12px;left:12px}.home-page{padding:64px 16px 40px}.home-headline{letter-spacing:-.025em;margin-bottom:24px;font-size:1.55rem}.home-greeting-text{font-size:.85rem}.home-suggestions{flex-direction:column;align-items:stretch}.suggestion-chip{text-align:center;border-radius:10px;padding:9px 14px}.searchbar{border-radius:12px;gap:8px;padding:9px 9px 9px 12px}.searchbar-input{font-size:.875rem}.searchbar-btn{border-radius:9px;width:33px;height:33px}.result-view{padding:60px 14px 64px}.result-query-icon{font-size:1.1rem}.result-query-text{letter-spacing:-.02em;font-size:1.15rem}.sources-grid{grid-template-columns:1fr}.source-card{padding:8px 10px}.answer-body{font-size:.9rem}.answer-h2{font-size:1rem}.answer-h3{font-size:.95rem}.followup-btn{padding:10px 11px;font-size:.82rem}}@media (hover:none){.sidebar-delete-btn{opacity:1;color:var(--text-3)}.source-arrow{opacity:.45}.searchbar-btn:hover:not(:disabled),.followup-btn:hover .followup-arrow{transform:none}}@media (width<=767px) and (orientation:landscape){.home-page{min-height:auto;padding-top:56px;padding-bottom:32px}.home-headline{margin-bottom:20px;font-size:1.5rem}.auth-page{align-items:flex-start;padding-top:36px;padding-bottom:24px}.auth-card{padding:24px}.auth-tagline{margin-bottom:20px}.auth-buttons{margin-bottom:18px}.result-view{padding-top:56px;padding-bottom:56px}}@supports (padding:env(safe-area-inset-bottom)){.main-content,.sidebar{padding-bottom:env(safe-area-inset-bottom)}.sidebar-toggle{top:calc(12px + env(safe-area-inset-top));left:calc(12px + env(safe-area-inset-left))}.home-page{padding-bottom:calc(48px + env(safe-area-inset-bottom))}.result-view{padding-bottom:calc(80px + env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:reduce){.sidebar,.sidebar-backdrop{transition:none}.thinking-dot,.app-loading-icon,.sidebar-skeleton,.answer-cursor,.searchbar-spinner{animation:none}.searchbar-btn:hover:not(:disabled),.followup-btn:hover .followup-arrow{transform:none}.source-card,.followup-btn,.auth-btn,.suggestion-chip{transition:none}}
