:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;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;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}a:hover{color:#747bff}button{background-color:#f9f9f9}}.register-container{width:320px;margin:40px auto;text-align:center;border:1px solid #ddd;padding:20px;border-radius:10px;background-color:#fafafa;box-shadow:0 2px 6px #0000000d}.register-form{display:flex;flex-direction:column;gap:12px}.register-input,.register-select{width:100%;padding:10px;border-radius:6px;border:1px solid #ccc;font-size:14px;box-sizing:border-box;transition:border-color .2s ease,box-shadow .2s ease}.register-input:focus,.register-select:focus{border-color:#007bff;outline:none;box-shadow:0 0 4px #007bff4d}.password-wrapper{position:relative;display:flex;align-items:center;width:100%}.password-wrapper input{width:100%;padding-right:40px;box-sizing:border-box}.toggle-password{position:absolute;right:8px;background:none;border:none;cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:#666}.toggle-password:hover{background-color:#f0f0f0;color:#333;transform:scale(1.05)}.toggle-password:active{transform:scale(.95)}.register-button{padding:10px;border:none;border-radius:6px;background-color:#007bff;color:#fff;font-weight:700;cursor:pointer;transition:background-color .2s ease,transform .1s}.register-button:hover{background-color:#0056b3;transform:translateY(-1px)}.register-message{margin-top:10px;font-size:14px}.register-message.success{color:#28a745}.register-message.error{color:#dc3545}:root{--bg-main: #f6f8fb;--panel: #ffffff;--sidebar-bg: #f1f5f9;--input-bg: #ffffff;--text-primary: #1f2937;--text-secondary: #6b7280;--border-color: #e5e7eb;--accent-color: #2563eb;--accent-hover: #1d4ed8;--button-text: #ffffff;--danger-color: #d93025}body,html,#root{margin:0;padding:0;height:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background-color:var(--bg-main);color:var(--text-primary)}.app-root{display:flex;height:100vh;width:100vw;overflow:hidden;background:radial-gradient(120% 120% at 10% 10%,#e0ebff 0%,transparent 35%),radial-gradient(100% 120% at 90% 10%,#e7f5ff 0%,transparent 30%)}.sidebar{width:300px;background-color:var(--sidebar-bg);border-right:1px solid var(--border-color);display:flex;flex-direction:column;padding:28px 24px;flex-shrink:0}.sidebar-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.logo-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,#2563eb,#60a5fa);color:#fff;font-weight:700;letter-spacing:.5px}.eyebrow{text-transform:uppercase;font-size:.7rem;letter-spacing:1px;color:var(--text-secondary);font-weight:700}.sidebar-title{font-size:1.2rem;font-weight:700;color:var(--text-primary)}.sidebar-hint{color:var(--text-secondary);margin:0 0 16px;line-height:1.5;font-size:.95rem}.sources-section{flex:1;display:flex;flex-direction:column;gap:15px}.section-title{font-size:.75rem;text-transform:uppercase;letter-spacing:1px;color:var(--text-secondary);font-weight:700;margin-bottom:8px}.add-source-btn{background-color:#fff;border:1px dashed #ccc;color:var(--accent-color);padding:14px;border-radius:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:all .2s;font-weight:500;box-shadow:0 1px 2px #0000000d}.plus-icon{width:22px;height:22px;display:grid;place-items:center;border-radius:8px;border:1px solid var(--border-color);background:#f8fafc;font-weight:700}.add-source-btn:hover{background-color:#f1f8ff;border-color:var(--accent-color)}.source-card{background-color:var(--panel);padding:16px;border-radius:12px;border:1px solid var(--border-color);display:flex;flex-direction:column;gap:12px;box-shadow:0 4px 16px #0000000a}.source-card.active{border-color:var(--accent-color);background-color:#f8faff}.file-info{display:flex;align-items:center;gap:10px;font-size:.9rem;word-break:break-all;color:var(--text-primary);font-weight:500}.file-icon{font-size:1.2rem}.file-actions{display:flex;gap:10px;margin-top:5px}.action-btn{flex:1;padding:8px;border-radius:6px;border:none;cursor:pointer;font-size:.8rem;font-weight:600;transition:opacity .2s}.upload-confirm-btn{background-color:var(--accent-color);color:#fff}.upload-confirm-btn:hover{background-color:var(--accent-hover)}.remove-btn{background-color:#f1f3f4;color:var(--text-secondary)}.remove-btn:hover{background-color:#e0e0e0;color:var(--danger-color)}.action-btn:disabled{opacity:.5;cursor:not-allowed}.main-content{flex:1;display:flex;flex-direction:column;background-color:var(--bg-main);position:relative;overflow:hidden}.top-nav{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;border-bottom:1px solid var(--border-color);background:linear-gradient(135deg,#f8fbff,#eef2ff);box-shadow:0 6px 12px #0000000a}.nav-eyebrow{text-transform:uppercase;font-size:.7rem;letter-spacing:1px;color:var(--text-secondary);font-weight:700}.nav-title{font-size:1.3rem;font-weight:700;color:var(--text-primary)}.nav-actions{display:flex;gap:15px}.nav-btn{background:var(--panel);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 14px;border-radius:10px;box-shadow:0 2px 8px #0000000d}.nav-btn:hover{background:#eef2ff}.chat-scroll-area{flex:1;overflow-y:auto;padding:12px 0 8px;display:flex;flex-direction:column;align-items:center;background:radial-gradient(120% 80% at 50% 0%,#eef2ff 0%,transparent 40%)}.messages-container{width:100%;max-width:800px;padding:0 24px;display:flex;flex-direction:column;gap:24px}.welcome-screen{text-align:center;margin-top:40px;color:var(--text-secondary);display:flex;flex-direction:column;gap:18px}.welcome-icon{font-size:3rem;margin-bottom:20px;background:linear-gradient(135deg,#4285f4,#ea4335,#fbbc04,#34a853);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.welcome-screen h2{color:var(--text-primary)}.welcome-grid,.welcome-card,.card-label{display:none}.message{display:flex;gap:18px;line-height:1.6;align-items:flex-start}.message-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;background-color:#e8f0fe;color:var(--accent-color);flex-shrink:0;font-weight:700;border:1px solid var(--border-color)}.message.user .message-avatar{background-color:#f1f3f4;color:#5f6368}.message-content{flex:1;font-size:1rem;color:var(--text-primary);background:var(--panel);border:1px solid var(--border-color);padding:14px 16px;border-radius:14px;box-shadow:0 4px 12px #0000000a}.message.ai .message-content{background:#f8faff;border-color:#dbeafe}.input-area-wrapper{padding:24px 24px 28px;display:flex;flex-direction:column;gap:10px;align-items:center;background:linear-gradient(to top,var(--bg-main) 80%,rgba(255,255,255,0))}.input-container{width:100%;max-width:800px;background-color:var(--input-bg);border-radius:24px;padding:12px 20px;display:flex;align-items:flex-end;gap:12px;border:1px solid var(--border-color);box-shadow:0 6px 20px #00000014;transition:box-shadow .2s}.input-container:focus-within{box-shadow:0 10px 24px #0000001a;border-color:#cbd5e1}.chat-input{flex:1;background:transparent;border:none;color:var(--text-primary);font-size:1rem;resize:none;max-height:200px;padding:8px 0;outline:none;font-family:inherit}.chat-input::placeholder{color:#9aa0a6}.send-icon-btn{background:var(--accent-color);border:none;cursor:pointer;padding:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .2s;color:#fff}.send-icon-btn:hover:not(:disabled){background-color:var(--accent-hover)}.send-icon-btn:disabled{background-color:#f1f3f4;color:#bdc1c6;cursor:default}.input-hint{width:100%;max-width:800px;text-align:left;color:var(--text-secondary);font-size:.9rem}.message-content code{background-color:#f1f3f4;color:#d63384;padding:2px 5px;border-radius:4px;font-family:Fira Code,monospace;font-size:.9em}.message-content pre{background-color:#f6f8fa!important;border:1px solid #e1e4e8;border-radius:8px;padding:12px;overflow-x:auto}.message-content pre code{background-color:transparent;color:inherit}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub
  Description: Light theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-light
  Current colors taken from GitHub's CSS
*/.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#005cc5}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-comment,.hljs-code,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}
