:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#202123;--bg-elev:#2a2b2e;--panel:#2c2d30;--panel-2:#3a3b3f;--text:#ececf1;--muted:#9da0a6;--border:#3f4146;--pill:#2a2b2e;--pill-border:#3b3d42;--accent:#10a37f;--shadow:0 12px 35px #00000059;--radius-xl:22px;--radius-lg:16px;--radius-md:12px;--radius-sm:10px;--max-width:760px;--topbar-height:64px;--composer-height:180px}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);margin:0;padding:0;font-family:Soehne,Helvetica Neue,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font-family:inherit}.page{background:radial-gradient(circle at 20% 20%,#ffffff0a,transparent 50%),radial-gradient(circle at 80% 0%,#ffffff0a,transparent 45%),var(--bg);flex-direction:column;min-height:100vh;display:flex}.topbar{min-height:var(--topbar-height);background:var(--bg);z-index:30;border-bottom:1px solid #ffffff05;justify-content:space-between;align-items:center;padding:18px 28px;display:flex;position:fixed;top:0;left:0;right:0}.brand{align-items:center;gap:12px;font-weight:600;display:flex}.brand-logo{object-fit:contain;width:38px;height:38px}.brand span{font-size:16px}.brand-title{letter-spacing:.2px;font-family:Soehne,Helvetica Neue,Arial,sans-serif;font-weight:600}.brand .caret{opacity:.8;font-size:12px}.top-actions{align-items:center;gap:12px;display:flex}.btn{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:999px;padding:8px 16px;font-size:13px;transition:border-color .2s,background .2s,color .2s}.btn.primary{color:#111;background:#fff;border-color:#fff}.btn:hover{background:#ffffff0a;border-color:#575a60}.btn.primary:hover{background:#f4f4f5;border-color:#f4f4f5}.icon-btn{border:1px solid var(--border);width:34px;height:34px;color:var(--text);cursor:pointer;background:0 0;border-radius:50%;place-items:center;transition:border-color .2s,background .2s;display:grid}.icon-btn:hover{background:#ffffff0a;border-color:#575a60}.main{flex-direction:column;flex:1;justify-content:center;align-items:center;padding:90px 20px 40px;display:flex}.main.compact{justify-content:flex-start;padding-top:90px}.hero{text-align:center;margin-bottom:28px;font-size:32px;font-weight:500}.chat-area{width:100%;max-width:var(--max-width);max-height:calc(100vh - var(--topbar-height) - var(--composer-height));scrollbar-width:none;flex-direction:column;gap:24px;padding-top:8px;padding-bottom:24px;display:flex;overflow-y:auto}.chat-area::-webkit-scrollbar{width:0;height:0}.message-row{gap:0;width:100%;display:flex}.message-row.user{justify-content:flex-end}.message-content{flex-direction:column;align-items:flex-start;max-width:70%;display:flex}.message-row.user .message-content{align-items:flex-end;margin-left:auto}.message-row.continued{margin-top:-12px}.avatar{color:#fff;background:#10a37f;border-radius:8px;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.bubble{color:var(--text);white-space:pre-wrap;background:#343541;border-radius:16px;padding:12px 16px;line-height:1.4;box-shadow:0 1px #ffffff0a}.message-row.user .bubble{background:#2f3033;border:1px solid #3a3b3f}.bubble.assistant{background:0 0;border:none;padding-left:0}.bubble.user{text-align:left}.message-row.continued:not(.user) .bubble{border-top-left-radius:8px}.message-tools{color:var(--muted);gap:8px;margin-top:8px;font-size:12px;display:flex}.copy-btn{color:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;transition:color .2s,opacity .2s;display:inline-flex}.copy-btn:hover{color:#d7d7db}.typing-bubble{justify-content:flex-start;align-items:center;padding:6px 0;display:flex}.typing-dot{background:#fff;border-radius:50%;width:12px;height:12px;animation:1.2s ease-in-out infinite typingPulse}.composer{flex-direction:column;align-items:center;gap:12px;width:100%;display:flex}.composer.docked{z-index:20;padding:0 20px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.input-shell{width:100%;max-width:var(--max-width);background:var(--panel);border-radius:var(--radius-xl);box-shadow:var(--shadow);border:1px solid #ffffff0a;padding:16px}.input-row{align-items:flex-start;gap:12px;display:flex}.input-row textarea{color:var(--text);resize:none;background:0 0;border:none;outline:none;flex:1;min-height:24px;font-size:15px;line-height:1.5}.input-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.pending-attachments{flex-wrap:wrap;gap:12px;margin-bottom:12px;display:flex}.pending-item{background:#2a2b2e;border:1px solid #3a3b3f;border-radius:14px;place-items:center;width:92px;height:92px;display:grid;position:relative;overflow:hidden}.pending-item img{object-fit:cover;width:100%;height:100%}.pending-file{color:var(--text);text-align:center;padding:8px;font-size:11px;line-height:1.3}.remove-attachment{color:#111;cursor:pointer;background:#fff;border:none;border-radius:50%;width:22px;height:22px;font-size:14px;line-height:1;position:absolute;top:6px;right:6px}.attachments{flex-wrap:wrap;gap:10px;margin-top:10px;display:flex}.attachment{color:var(--text);background:#2a2b2e;border:1px solid #3a3b3f;border-radius:12px;align-items:center;gap:8px;padding:6px 10px;font-size:12px;display:inline-flex}.attachment.image{flex-direction:column;align-items:flex-start;padding:6px}.attachment.image img{object-fit:cover;border-radius:8px;width:120px;height:90px}.attachment.image span{color:var(--muted);font-size:11px}.pill{border:1px solid var(--pill-border);background:var(--pill);color:var(--text);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:12px;transition:border-color .2s,background .2s;display:inline-flex}.pill.audio{margin-left:auto;padding-inline:14px}.pill:hover{background:#ffffff0d;border-color:#575a60}.send-btn{color:#111;cursor:pointer;background:#fff;border:none;border-radius:999px;place-items:center;width:36px;height:36px;margin-left:auto;transition:transform .15s,background .2s;display:grid}.send-btn:hover{background:#f4f4f5;transform:translateY(-1px)}.footer-note{color:var(--muted);text-align:center;margin-top:0;font-size:12px}.footer-note a{text-decoration:underline}@media (max-width:700px){.topbar{padding:14px 18px}.hero{font-size:26px}.input-shell{border-radius:18px}.bubble{max-width:84%}}@keyframes typingPulse{0%,to{opacity:.6;transform:scale(.65)}50%{opacity:1;transform:scale(1)}}
