.j-voice{display:inline-flex;min-width:0;align-items:center}.j-voice[data-voice-active=true]{flex:1 1 auto;width:100%}.j-voice__trigger{touch-action:none}.j-voice[data-voice-active=true]>.j-voice__trigger{position:absolute;opacity:0;pointer-events:none}.j-rec{--r-sm-c:calc(var(--r-md) - 4px);--j-lvl:0;position:relative;display:flex;align-items:center;gap:10px;flex:1;min-width:0;min-height:44px;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;animation:j-rec-in var(--t-slow) var(--ease-msg) backwards;transition:opacity var(--t-fast),transform var(--t-fast)}.j-rec[data-out=true]{opacity:0;transform:translateY(4px)}.j-rec__dot{width:10px;height:10px;flex:none;border-radius:50%;background:var(--destructive);animation:j-rec-dot 1.4s ease-in-out infinite}.j-rec__time{flex:none;min-width:36px;font-size:var(--tx-sm);font-variant-numeric:tabular-nums}.j-rec__wave{display:flex;align-items:center;justify-content:space-between;flex:1;min-width:0;height:28px;overflow:hidden}.j-rec__wave i{flex:none;width:3px;height:calc(3px + var(--h,0) * 25px);border-radius:var(--r-pill);background:var(--brand);transition:height .13s var(--ease-out)}.j-rec__hint{font-size:var(--tx-xs);white-space:nowrap}.j-rec__cancel,.j-rec__hint{flex:none;color:var(--text-muted)}.j-rec__cancel{height:32px;padding:0 8px;border:0;border-radius:var(--r-sm-c);background:none;font:500 var(--tx-sm) var(--font-sans);cursor:pointer}.j-rec__cancel:hover{background:var(--hover);color:var(--text)}.j-rec__btn{position:relative;display:grid;place-items:center;width:44px;height:44px;flex:none;border:0;border-radius:50%;background:var(--brand);color:var(--brand-fg);cursor:pointer;animation:j-rec-pop var(--t-slow) var(--ease-msg) backwards;transition:width var(--t-base) var(--ease-out),opacity var(--t-fast),transform var(--t-base) var(--ease-out)}.j-rec__btn svg{position:relative;z-index:1;width:20px;height:20px}.j-rec__btn:after,.j-rec__btn:before{content:"";position:absolute;inset:0;border-radius:50%;background:var(--brand);pointer-events:none;transition:transform .14s linear;animation:j-fade var(--t-slow) var(--ease-out) backwards}.j-rec__btn:before{opacity:.2;transform:scale(calc(1.12 + var(--j-lvl) * .5))}.j-rec__btn:after{opacity:.1;transform:scale(calc(1.25 + var(--j-lvl) * .9))}.j-rec__label{flex:none;color:var(--text-muted);font-size:var(--tx-sm)}.j-rec--busy .j-rec__btn{width:0;opacity:0;transform:scale(.4);overflow:hidden;pointer-events:none}.j-rec--busy .j-rec__wave i{height:22px;transform-origin:center;animation:j-rec-run 1.5s ease-in-out infinite;animation-delay:calc(var(--i,0) * -24ms)}@keyframes j-rec-in{0%{opacity:0;transform:translateY(6px)}}@keyframes j-rec-pop{0%{transform:scale(.5);opacity:0}}@keyframes j-rec-dot{50%{opacity:.35;transform:scale(.8)}}@keyframes j-rec-run{0%,to{transform:scaleY(.18);opacity:.35}50%{transform:scaleY(1);opacity:1}}@media (prefers-reduced-motion:reduce){.j-rec,.j-rec__btn{animation:none}.j-rec__btn:after,.j-rec__btn:before{transform:scale(1.2)}.j-rec__dot{animation:none}.j-rec--busy .j-rec__wave i{animation:none;transform:scaleY(.4)}}@keyframes j-fade{0%{opacity:0}to{opacity:1}}.j-rec--error{flex-wrap:wrap;min-height:-moz-min-content;min-height:min-content;font-size:var(--tx-sm)}.j-rec--error .j-rec__error{flex:0 1 auto}.ws-descr:has(>.kb-description-heading>.j-voice[data-voice-active=true]:not([data-voice-mode=realtime]))>.ws-textarea:focus{border-color:var(--ws-border);box-shadow:none}.kb-composer-field>.j-voice[data-voice-active=true]:has(>.j-rec--error){position:static}.kb-composer-field:has(>.j-voice>.j-rec--error)>:not(.j-voice){display:none}.composer-card:has(.j-voice[data-voice-active=true]),.kb-composer-field:has(>.j-voice[data-voice-active=true]){position:relative}.kb-composer-field:has(>.j-voice[data-voice-active=true])>:not(.j-voice){visibility:hidden}.composer-card .j-voice[data-voice-active=true],.kb-composer-field>.j-voice[data-voice-active=true]{position:absolute;inset:0;z-index:2}.kb-description-heading:has(>.j-voice[data-voice-active=true]){flex-wrap:wrap}.kb-description-heading>.j-voice[data-voice-active=true]{flex-basis:100%}.composer-card .j-voice[data-voice-active=true],.kb-composer-field>.j-voice[data-voice-active=true]{border-radius:inherit;background:var(--surface)}.composer-card:has(.j-voice[data-voice-active=true]):focus-within{border-color:var(--glass-border);box-shadow:var(--shadow-md)}.composer-card :has(>.j-voice[data-voice-mode=realtime][data-voice-active=true])>:not(.j-voice),.composer-card>:has(.j-voice[data-voice-mode=realtime][data-voice-active=true])>:not(:has(.j-voice)){visibility:hidden}.composer-card .j-voice[data-voice-mode=realtime][data-voice-active=true]{inset:auto 0 0;width:auto;border-radius:0 0 var(--r-xl) var(--r-xl);overflow:visible;padding:0 .75rem .5rem .5rem;background:transparent}.j-rec__error{min-width:0;overflow-wrap:anywhere;flex:1;color:var(--destructive)}.composer-card .j-voice[data-voice-mode=realtime][data-voice-active=true]{padding-left:calc(.5rem + .75rem)}.kb-card-composer-host:has(.j-rec--error){background:var(--ws-bg-1)}.kb-card-composer-host .kb-composer-field>.j-voice:has(>.j-rec--error){background:transparent}.kb-panel .kb-card-composer-host .kb-composer:has(.j-rec--error){background:var(--surface)}.kb-panel-in-sheet .kb-card-composer-host:has(.j-rec--error){background:var(--bg)}.kb-panel-in-sheet .kb-card-composer-host:has(.j-rec--error):before{content:"";position:absolute;inset:auto 0 100%;height:var(--r-lg);background:linear-gradient(transparent,var(--bg) 50%);pointer-events:none}