.chat-input-container{background-color:var(--background-color);border-top:1px solid var(--border-color);align-items:flex-end;gap:12px;padding:12px 16px;display:flex}.chat-input-wrapper{border:1px solid var(--border-color);background-color:var(--input-background);border-radius:20px;flex:1;max-height:160px;padding:8px 16px;transition:height .2s ease-in-out;position:relative}.chat-input{color:var(--text-color);resize:none;background:0 0;border:none;outline:none;width:100%;min-height:24px;max-height:144px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:20px;overflow-y:auto}.chat-input::-webkit-scrollbar{width:4px}.chat-input::-webkit-scrollbar-track{background:0 0}.chat-input::-webkit-scrollbar-thumb{background:var(--scrollbar-color);border-radius:2px}.chat-input::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-hover-color)}.send-button{color:#fff;cursor:pointer;background-color:#007aff;border:none;border-radius:20px;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;font-weight:700;transition:background-color .2s;display:flex}.send-button:hover{background-color:#0056cc}.send-button:disabled{cursor:not-allowed;background-color:#ccc}.chat-input-wrapper.growing{transition:height .15s cubic-bezier(.4,0,.2,1)}.dark-theme{--background-color:#1a1a1a;--border-color:#333;--input-background:#2a2a2a;--text-color:#fff;--scrollbar-color:#555;--scrollbar-hover-color:#777}.light-theme{--background-color:#fff;--border-color:#e0e0e0;--input-background:#f8f8f8;--text-color:#000;--scrollbar-color:#ccc;--scrollbar-hover-color:#999}.auto-growing-input{resize:none;scrollbar-width:thin;scrollbar-color:var(--scrollbar-color)transparent;transition:height .15s ease-out;overflow-y:auto}.auto-growing-input:focus{border-color:var(--primary-color,#007aff);outline:none}.input-controls{align-items:center;gap:8px;display:flex}.control-button{cursor:pointer;background:0 0;border:none;border-radius:16px;justify-content:center;align-items:center;width:32px;height:32px;transition:background-color .2s;display:flex}.control-button:hover{background-color:var(--hover-background,#0000001a)}.control-button:disabled{opacity:.5;cursor:not-allowed}.recording{animation:1s infinite pulse;background-color:#f44!important}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}