:root{--bg: #1a1a2e;--bg-2: #232342;--bg-3: #2d2d52;--text: #f4f4f7;--text-dim: #9999b3;--accent: #e94560;--green: #00b894;--border: #333355}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;-webkit-tap-highlight-color:transparent}button,input,textarea,select{font:inherit;color:inherit}a{color:var(--accent);text-decoration:none}.app{display:flex;flex-direction:column;height:100dvh;max-width:720px;margin:0 auto}.app-main{flex:1;overflow-y:auto;padding:16px 16px 80px}.app-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;background:var(--bg-2);border-top:1px solid var(--border);padding:8px 0 max(8px,env(safe-area-inset-bottom));z-index:10}.app-nav a{color:var(--text-dim);font-size:12px;text-align:center;padding:6px 12px;border-radius:6px}.app-nav a.active{color:var(--text)}.app-nav .nav-icon{display:block;font-size:20px}.app-nav .nav-fab{background:var(--accent);color:#fff;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-top:-16px;font-size:28px}.btn{background:var(--accent);color:#fff;border:0;border-radius:8px;padding:12px 16px;font-weight:600;cursor:pointer}.btn:disabled{opacity:.5;cursor:default}.btn.ghost{background:transparent;border:1px solid var(--border)}.btn.green{background:var(--green)}.input,.textarea,.select{width:100%;background:var(--bg-2);border:1px solid var(--border);border-radius:8px;padding:12px;color:var(--text)}.input:focus,.textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}label{display:block;font-size:12px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.row{display:flex;gap:8px}.row>*{flex:1}.section-title{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--text-dim);margin:12px 0 6px}.list-card{background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:12px;margin-bottom:8px}.card-table{width:100%;border-collapse:collapse;font-size:13px}.card-table th{text-align:left;color:var(--text-dim);font-weight:500;padding:6px 4px;border-bottom:1px solid var(--border);font-size:11px;text-transform:uppercase;letter-spacing:.5px}.card-table td{padding:8px 4px;border-bottom:1px solid var(--border)}.empty{color:var(--text-dim);text-align:center;padding:32px 16px}.chat-stream{display:flex;flex-direction:column;gap:12px}.chat-bubble{padding:10px 14px;border-radius:12px;max-width:90%;word-wrap:break-word}.chat-bubble.user{background:var(--accent);color:#fff;align-self:flex-end}.chat-bubble.assistant{background:var(--bg-2);border:1px solid var(--border);align-self:flex-start;width:100%;max-width:100%}.chat-bubble.assistant table{width:100%;border-collapse:collapse;font-size:13px;margin:8px 0}.chat-bubble.assistant th,.chat-bubble.assistant td{padding:6px 4px;border-bottom:1px solid var(--border);text-align:left}.chat-bubble.assistant th{color:var(--text-dim);font-size:11px;text-transform:uppercase;letter-spacing:.5px}.chat-bubble.assistant code{background:var(--bg-3);padding:1px 4px;border-radius:3px;font-size:12px}.chat-input-row{position:fixed;bottom:64px;left:0;right:0;display:flex;gap:8px;padding:8px;background:var(--bg);border-top:1px solid var(--border);max-width:720px;margin:0 auto}.chat-input-row .input{flex:1}.spinner{display:inline-block;width:16px;height:16px;border:2px solid var(--text-dim);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error{color:var(--accent);font-size:13px;margin-top:8px}.dim{color:var(--text-dim)}.upside{color:var(--accent);font-weight:600}.profit{color:var(--green);font-weight:600}
