*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#1a1a2e;color:#e0e0e0;height:100vh}#root{height:100vh}.app{display:flex;flex-direction:column;height:100vh;max-width:800px;margin:0 auto}header{padding:16px 20px;border-bottom:1px solid #2a2a4a}header h1{font-size:1.3rem;color:#7c83ff}header p{font-size:.85rem;color:#888;margin-top:4px}.messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:12px}.suggestions{margin:auto 0;padding:12px}.suggestions-label{color:#9a9ac0;font-size:.9em;margin-bottom:12px;text-align:center}.suggestions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;max-width:720px;margin:0 auto}.suggestion-chip{background:#2a2a4a;color:#e4e4f5;border:1px solid #3d3d66;border-radius:10px;padding:12px 14px;text-align:left;font-size:.92em;line-height:1.35;cursor:pointer;transition:background .15s,border-color .15s}.suggestion-chip:hover{background:#35355c;border-color:#7c83ff}.message{display:flex}.message.user{justify-content:flex-end}.bubble{max-width:75%;padding:10px 14px;border-radius:12px;line-height:1.4;word-break:break-word}.message.user .bubble{background:#7c83ff;color:#fff;border-bottom-right-radius:4px}.message.assistant .bubble{background:#2a2a4a;border-bottom-left-radius:4px;max-width:85%}.markdown-body{line-height:1.4;font-size:.9rem}.markdown-body>*:first-child{margin-top:0}.markdown-body>*:last-child{margin-bottom:0}.markdown-body h1,.markdown-body h2,.markdown-body h3{margin:8px 0 4px;color:#e8e8ff}.markdown-body h1{font-size:1.1rem}.markdown-body h2{font-size:1rem}.markdown-body h3{font-size:.95rem}.markdown-body p{margin:3px 0}.markdown-body strong{color:#b8bbff}.markdown-body ul,.markdown-body ol{padding-left:18px;margin:3px 0}.markdown-body li{margin:1px 0}.markdown-body table{border-collapse:collapse;width:100%;margin:6px 0;font-size:.8rem}.markdown-body th,.markdown-body td{border:1px solid #3a3a5a;padding:4px 8px;text-align:left}.markdown-body th{background:#1a1a2e;color:#b8bbff;font-weight:600}.markdown-body tr:nth-child(2n){background:#ffffff08}.markdown-body code{background:#1a1a2e;padding:1px 4px;border-radius:3px;font-size:.85em;color:#8f8}.markdown-body pre{background:#1a1a2e;padding:8px;border-radius:6px;overflow-x:auto;margin:4px 0}.markdown-body pre code{padding:0;background:none}.bubble.loading{color:#ccc}.status-text{font-weight:500;margin-bottom:6px}.live-tools{display:flex;flex-direction:column;gap:4px;margin-top:6px}.live-tool{display:flex;gap:8px;font-size:.8rem;align-items:baseline}.live-tool-name{color:#7c83ff;font-weight:600;white-space:nowrap}.live-tool-input{color:#888;font-family:monospace;font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-calls{margin-top:10px;font-size:.85rem}.tool-calls summary{cursor:pointer;color:#7c83ff;font-weight:500}.tool-call{margin-top:8px;padding:8px;background:#1a1a2e;border-radius:6px}.tool-name{color:#7c83ff;font-weight:600;margin-bottom:4px}.tool-input,.tool-output{font-size:.8rem;overflow-x:auto;padding:6px;border-radius:4px;margin-top:4px}.tool-input{background:#16162a;color:#aaa}.tool-output{background:#16162a;color:#8f8;max-height:200px;overflow-y:auto}.input-bar{display:flex;gap:8px;padding:16px 20px;border-top:1px solid #2a2a4a}.input-bar input{flex:1;padding:10px 14px;border-radius:8px;border:1px solid #3a3a5a;background:#2a2a4a;color:#e0e0e0;font-size:1rem;outline:none}.input-bar input:focus{border-color:#7c83ff}.input-bar button{padding:10px 20px;border-radius:8px;border:none;background:#7c83ff;color:#fff;font-size:1rem;cursor:pointer}.input-bar button:disabled{opacity:.5;cursor:not-allowed}.intro-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;background:#0a0a16b3;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.intro-modal{max-width:520px;width:100%;max-height:calc(100vh - 40px);overflow-y:auto;background:#20203a;border:1px solid #3a3a5a;border-radius:14px;padding:28px;box-shadow:0 20px 60px #00000080}.intro-eyebrow{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:#7c83ff;font-weight:600;margin-bottom:8px}.intro-title{font-size:1.5rem;color:#e8e8ff;margin-bottom:16px}.intro-body p{font-size:.9rem;line-height:1.6;color:#c0c0d8;margin-bottom:12px}.intro-body p:last-child{margin-bottom:0}.intro-button{margin-top:22px;width:100%;padding:12px;border:none;border-radius:8px;background:#7c83ff;color:#fff;font-size:1rem;font-weight:500;cursor:pointer}.intro-button:hover{background:#8f96ff}
