*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #111;--surface: #1c1c1e;--surface-2: #2c2c2e;--text: #f2f2f7;--text-dim: #98989e;--accent: #d97757;--radius: 14px}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}.app{display:flex;flex-direction:column;height:100dvh;max-width:720px;margin:0 auto}.topbar{display:flex;align-items:center;gap:8px;padding:calc(env(safe-area-inset-top) + 10px) 14px 10px;border-bottom:1px solid var(--surface-2)}.topbar h1{font-size:17px;font-weight:600;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}button{font:inherit;border:none;border-radius:10px;background:var(--surface-2);color:var(--text);padding:8px 14px;cursor:pointer;-webkit-tap-highlight-color:transparent}button.primary{background:var(--accent);color:#fff}.badge{font-size:12px;padding:3px 8px;border-radius:999px;background:var(--surface-2);color:var(--text-dim)}.badge.company{background:#3a2f5b;color:#c8b8ff}.chat-list{flex:1;overflow-y:auto;padding:10px 14px calc(env(safe-area-inset-bottom) + 10px)}.chat-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:var(--surface);margin-bottom:8px;padding:14px;border-radius:var(--radius)}.chat-item .title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-item .meta{font-size:12px;color:var(--text-dim);flex-shrink:0}.messages{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px}.msg{max-width:85%;padding:10px 14px;border-radius:var(--radius);white-space:pre-wrap;word-break:break-word;line-height:1.45;font-size:15px}.msg.user{align-self:flex-end;background:var(--accent);color:#fff}.msg.assistant{align-self:flex-start;background:var(--surface)}.msg.status{align-self:flex-start;color:var(--text-dim);font-size:13px;padding:2px 4px}.composer{display:flex;gap:8px;padding:10px 14px calc(env(safe-area-inset-bottom) + 10px);border-top:1px solid var(--surface-2)}.composer textarea{flex:1;resize:none;border:none;outline:none;background:var(--surface);color:var(--text);border-radius:var(--radius);padding:12px;font:inherit;font-size:16px;max-height:140px}.login{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;height:100dvh;padding:24px;text-align:center}.login input{font-size:24px;letter-spacing:8px;text-align:center;width:200px;padding:12px;border-radius:var(--radius);border:1px solid var(--surface-2);background:var(--surface);color:var(--text);outline:none}.hint{color:var(--text-dim);font-size:14px}
