.memory-canvas-container{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.voice-chat-root{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;width:100%;max-width:480px;margin:0 auto;gap:.5rem;min-height:calc(100dvh - 10rem)}.voice-chat-image{width:100%}.image-upload-hero{position:relative;width:100%;text-align:center}.image-upload-remove-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .75rem;border-radius:9999px;border:1px solid hsl(var(--border));background:hsl(var(--background));color:hsl(var(--muted-foreground));font-size:.75rem;font-family:inherit;cursor:pointer;transition:color .15s ease,border-color .15s ease}.image-upload-remove-pill:hover{color:hsl(var(--foreground));border-color:hsl(var(--muted-foreground) / .6)}.image-upload-dropzone{border:2px dashed hsl(var(--border));border-radius:var(--radius);padding:2.5rem 1.5rem;text-align:center;cursor:pointer;transition:background .2s ease,border-color .2s ease;min-height:160px;display:flex;align-items:center;justify-content:center;background:hsl(var(--background))}.image-upload-dropzone:hover{border-color:hsl(var(--muted-foreground) / .4)}.image-upload-dropzone--active{background:hsl(var(--muted));border-color:hsl(var(--primary))}.image-upload-dropzone-inner{color:hsl(var(--muted-foreground));font-size:.875rem;display:flex;flex-direction:column;align-items:center;gap:.5rem}.image-upload-hint{font-size:.75rem;opacity:.6}.voice-chat-controls{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem;width:100%;margin-top:auto;background:hsl(var(--background));border-radius:var(--radius)}.voice-ctrl{position:relative;display:flex;align-items:center;justify-content:center;border-radius:9999px;border:1.5px solid hsl(var(--border));background:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;transition:all .2s ease;flex-shrink:0}.voice-ctrl:hover:not([data-disabled]){border-color:hsl(var(--primary));color:hsl(var(--primary))}.voice-ctrl--lg{width:4.5rem;height:4.5rem}.voice-ctrl--sm{width:3rem;height:3rem}.voice-ctrl--recording{border-color:hsl(var(--primary));background:hsl(var(--primary));color:hsl(var(--background));animation:pulse 1.8s ease-in-out infinite}.voice-ctrl--recording:hover{color:hsl(var(--background));opacity:.9}.voice-ctrl--paused{border-color:hsl(var(--primary));color:hsl(var(--primary))}.voice-ctrl--stop:not([data-disabled]){border-color:#dc2828;color:#dc2828}.voice-ctrl--stop:not([data-disabled]):hover{background:#dc2828;color:hsl(var(--background))}.voice-ctrl[data-disabled]{opacity:.3;cursor:default;pointer-events:none}.voice-chat-status{font-size:.8rem;color:hsl(var(--muted-foreground));text-align:center;margin:0;min-height:1.2em}.voice-chat-interim{width:100%;text-align:center;padding:.25rem 1rem}.voice-chat-interim p{margin:0;font-size:.9rem;color:hsl(var(--foreground));font-style:italic;opacity:.75;line-height:1.4}.transcript-panel{width:100%;border:1px solid hsl(var(--border) / .5);border-radius:var(--radius);background:hsl(var(--background));overflow:hidden;transition:max-height .3s ease}.transcript-panel--expanded{max-height:50dvh;display:flex;flex-direction:column}.transcript-toggle{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .75rem;background:none;border:none;border-bottom:1px solid hsl(var(--border) / .5);color:hsl(var(--muted-foreground));font-size:.75rem;cursor:pointer;transition:color .15s ease;font-family:inherit}.transcript-toggle:hover{color:hsl(var(--foreground))}.transcript-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .35rem;border-radius:9999px;background:hsl(var(--primary) / .15);color:hsl(var(--primary));font-size:.65rem;font-weight:600}.transcript-peek{padding:.35rem .75rem .5rem;display:flex;flex-direction:column;gap:.2rem}.transcript-peek-line{display:flex;align-items:baseline;gap:.4rem;font-size:.8rem;line-height:1.3;overflow:hidden}.transcript-peek-role{font-weight:600;font-size:.7rem;color:hsl(var(--primary));flex-shrink:0;text-transform:uppercase;letter-spacing:.02em}.transcript-peek-text{color:hsl(var(--foreground) / .75);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.transcript-full{display:flex;flex-direction:column;flex:1;min-height:0}.transcript-messages{flex:1;overflow-y:auto;padding:.5rem .75rem;display:flex;flex-direction:column;gap:.5rem;max-height:35dvh}.transcript-bubble{padding:.5rem .75rem;border-radius:var(--radius);font-size:.85rem;line-height:1.45;max-width:85%;word-wrap:break-word}.transcript-bubble--user{align-self:flex-end;background:hsl(var(--primary));color:hsl(var(--background))}.transcript-bubble--ai{align-self:flex-start;background:hsl(var(--muted));color:hsl(var(--foreground))}.transcript-input-row{display:flex;align-items:center;gap:.4rem;padding:.4rem .75rem .5rem;border-top:1px solid hsl(var(--border) / .5)}.transcript-input{flex:1;padding:.35rem .6rem;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--background));color:hsl(var(--foreground));font-size:.8rem;font-family:inherit;outline:none;transition:border-color .15s ease}.transcript-input:focus{border-color:hsl(var(--primary))}.transcript-input::placeholder{color:hsl(var(--muted-foreground) / .6)}.transcript-input:disabled{opacity:.5}.transcript-send-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:var(--radius);border:1px solid hsl(var(--border));background:hsl(var(--background));color:hsl(var(--primary));cursor:pointer;transition:all .15s ease;flex-shrink:0}.transcript-send-btn:hover:not(:disabled){background:hsl(var(--primary));color:hsl(var(--background));border-color:hsl(var(--primary))}.transcript-send-btn:disabled{opacity:.3;cursor:default}.voice-chat-actions{display:flex;gap:.75rem;width:100%;padding:.75rem;background:hsl(var(--background));border-radius:var(--radius)}.voice-chat-btn{flex:1;padding:.55rem 1rem;border-radius:var(--radius);font-size:.8rem;font-weight:500;font-family:inherit;cursor:pointer;transition:all .15s ease;border:1px solid transparent;text-align:center}.voice-chat-btn--primary{background:hsl(var(--primary));color:hsl(var(--background));border-color:hsl(var(--primary))}.voice-chat-btn--primary:hover:not(:disabled){opacity:.9}.voice-chat-btn--primary:disabled{opacity:.5;cursor:default}.voice-chat-btn--secondary{background:hsl(var(--muted));color:hsl(var(--foreground));border-color:hsl(var(--border))}.voice-chat-btn--secondary:hover:not(:disabled){border-color:hsl(var(--muted-foreground) / .4)}.typing-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:hsl(var(--muted-foreground));animation:typing-bounce 1.2s ease-in-out infinite}@keyframes typing-bounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}@keyframes pulse{0%{box-shadow:0 0 hsl(var(--primary) / .4)}70%{box-shadow:0 0 0 10px hsl(var(--primary) / 0)}to{box-shadow:0 0 hsl(var(--primary) / 0)}}
