*{box-sizing:border-box}body{margin:0;background:#000;color:#fff;font-family:Arial,Helvetica,sans-serif}.app{max-width:860px;margin:0 auto;min-height:100vh;padding:18px;display:flex;flex-direction:column;gap:16px}.top{display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:14px}h1{font-size:24px;line-height:1;margin:0 0 8px}p{margin:0;color:rgba(255,255,255,.7);font-size:14px}.messages{flex:1;display:flex;flex-direction:column;gap:12px;overflow:auto;padding:4px 0}.msg{border:1px solid rgba(255,255,255,.18);padding:12px;white-space:pre-wrap;line-height:1.45}.msg.user{align-self:flex-end;max-width:82%;background:#fff;color:#000}.msg.assistant{align-self:flex-start;max-width:92%;background:#000;color:#fff}.composer{border-top:1px solid rgba(255,255,255,.2);padding-top:14px;display:flex;flex-direction:column;gap:12px}textarea,input[type=file],button{font:inherit}textarea{width:100%;resize:vertical;min-height:84px;background:#000;color:#fff;border:1px solid rgba(255,255,255,.35);padding:12px}input[type=file]{color:#fff}.actions{display:flex;justify-content:flex-end;margin-top:8px}button{background:#fff;color:#000;border:1px solid #fff;padding:10px 18px;cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}#clear{padding:8px 12px;background:#000;color:#fff}@media(max-width:560px){.app{padding:12px}.msg.user,.msg.assistant{max-width:100%}.top{gap:12px}button{width:100%}.actions{display:block}#clear{width:auto}}
