.spc-fab{position:fixed;inset-block-end:18px;inset-inline-end:18px;z-index:72;inline-size:52px;block-size:52px;border-radius:50%;border:none;cursor:pointer;display:grid;place-items:center;background:var(--navy);color:#fff;box-shadow:0 10px 26px rgba(11,28,51,.32);transition:transform .16s ease,box-shadow .16s ease,inset-block-end .2s ease}.spc-fab:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(11,28,51,.4)}.spc-fab:active{transform:scale(.96)}.spc-fab svg{inline-size:24px;block-size:24px}.spc-win{position:fixed;inset-block-end:84px;inset-inline-end:18px;z-index:75;inline-size:min(360px,calc(100vw - 24px));block-size:min(480px,calc(100dvh - 120px));display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 60px rgba(11,28,51,.22);overflow:hidden;animation:spc-up .18s ease-out}@keyframes spc-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.spc-win{animation:none}}.spc-head{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--navy);color:#fff}.spc-head .spc-avatar{inline-size:34px;block-size:34px;border-radius:50%;background:var(--accent);color:var(--navy);display:grid;place-items:center;font-weight:700;font-size:14px}.spc-head .spc-t{flex:1;min-inline-size:0}.spc-head .spc-t b{display:block;font-size:14px}.spc-head .spc-t span{display:block;font-size:var(--fs-2xs);opacity:.75}.spc-head .spc-x{border:none;background:rgba(255,255,255,.12);color:#fff;inline-size:30px;block-size:30px;border-radius:8px;cursor:pointer;display:grid;place-items:center;font-size:16px;line-height:var(--lh-flat)}.spc-head .spc-x:hover{background:rgba(255,255,255,.22)}.spc-body{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px;background:var(--canvas)}.spc-guest{flex:1;display:grid;place-content:center;gap:12px;text-align:center;padding:24px;background:var(--canvas)}.spc-guest p{font-size:var(--fs-sm);color:var(--ink-2);margin:0}.spc-guest a{display:inline-block;background:var(--navy);color:#fff;border-radius:10px;padding:10px 24px;font-size:14px;font-weight:700;text-decoration:none}.spc-fab{inset-block-end:calc(18px + var(--mnav-lift, 0px) + env(safe-area-inset-bottom, 0px))}body:has(.cmp-bar) .spc-fab{inset-block-end:calc(96px + var(--mnav-lift, 0px) + env(safe-area-inset-bottom, 0px))}.spc-win{inset-block-end:calc(84px + var(--mnav-lift, 0px) + env(safe-area-inset-bottom, 0px))}@media (max-width:980px){.spc-win{block-size:min(440px,calc(100dvh - 180px))}}body{--vca-cmp:0px}body:has(.cmp-bar){--vca-cmp:78px}.vca-fab{position:fixed;inset-block-end:calc(80px + var(--mnav-lift, 0px) + var(--vca-cmp) + env(safe-area-inset-bottom, 0px));inset-inline-end:18px;z-index:72;inline-size:52px;block-size:52px;border:none;border-radius:50%;display:grid;place-items:center;cursor:pointer;background:var(--accent);color:var(--navy);box-shadow:0 10px 26px rgba(23,35,64,.32);transition:transform .16s var(--ease-out),box-shadow .16s var(--ease-out)}.vca-fab:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(23,35,64,.4)}.vca-fab:active{transform:scale(.96)}.vca-fab:focus-visible{outline:3px solid var(--navy);outline-offset:2px}.vca-fab svg{inline-size:24px;block-size:24px}.vca-fab.live{background:var(--danger);color:#fff}.vca-fab.live:after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--danger);opacity:0;pointer-events:none}body:not(:has(.vca-call)) .vca-fab.live:after{animation:vca-ring 2.4s var(--ease-io) infinite}@keyframes vca-ring{0%{transform:scale(1);opacity:.55}70%,to{transform:scale(1.55);opacity:0}}.vca-call{position:fixed;inset-block-end:calc(142px + var(--mnav-lift, 0px) + var(--vca-cmp) + env(safe-area-inset-bottom, 0px));inset-inline-end:18px;z-index:75;inline-size:min(360px,calc(100vw - 24px));max-block-size:min(64dvh,560px);display:flex;flex-direction:column;overflow:hidden;background:var(--navy);border:1px solid rgba(255,255,255,.1);border-radius:var(--r-lg);box-shadow:0 24px 60px rgba(23,35,64,.34);color:#aeb6cd;font-family:var(--sans);animation:vca-up .18s var(--ease-out) both}@keyframes vca-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.vca-call :focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:8px}.vca-top{display:flex;align-items:flex-start;gap:10px;padding:12px 16px 10px}.vca-avatar{flex:none;inline-size:34px;block-size:34px;border-radius:50%;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center}.vca-avatar svg{inline-size:18px;block-size:18px}.vca-id{flex:1;min-inline-size:0}.vca-name{display:block;font-size:var(--fs-md);font-weight:700;letter-spacing:-.01em;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vca-meta{display:flex;align-items:center;gap:8px;margin-block-start:3px}.vca-phase{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-sm);font-weight:500}.vca-phase i{inline-size:7px;block-size:7px;border-radius:50%;background:currentColor;flex:none}.vca-call.is-listening .vca-phase{color:var(--surface-2)}.vca-call.is-speaking .vca-phase,.vca-call.is-thinking .vca-phase,.vca-call.is-working .vca-phase{color:var(--accent)}.vca-call.is-ended .vca-phase{color:#9aa2bd}.vca-clock{margin-inline-start:auto;font-size:var(--fs-sm);color:#aeb6cd}.vca-clock .num{font-family:var(--mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum";direction:ltr;unicode-bidi:isolate}.vca-call.is-low .vca-clock{color:#ffb4a8}.vca-x{position:relative;flex:none;inline-size:36px;block-size:36px;border:none;border-radius:10px;background:rgba(255,255,255,.1);color:#fff;cursor:pointer;display:grid;place-items:center;transition:background-color var(--dur-1) var(--ease-io)}.vca-x:after{content:"";position:absolute;inset:-4px}.vca-x:hover{background:rgba(255,255,255,.2)}.vca-x svg{inline-size:16px;block-size:16px}.vca-tline{position:relative;block-size:2px;background:rgba(255,255,255,.1)}.vca-tline i{position:absolute;inset:0;background:var(--accent);transform:scaleX(var(--t,1));transform-origin:100% 50%;transition:transform 1s linear}[dir=ltr] .vca-tline i{transform-origin:0 50%}.vca-call.is-low .vca-tline i{background:#ffb4a8}.vca-stage{position:relative;flex:none;block-size:96px;overflow:hidden}.vca-axis{position:absolute;inset-inline:14px;inset-block-start:50%;block-size:1px;margin-block-start:-.4px;background:rgba(255,255,255,.24);transition:background-color var(--dur-1) var(--ease-io)}.vca-call.is-listening .vca-axis{background:rgba(255,255,255,.44)}.vca-call.is-thinking .vca-axis,.vca-call.is-warming .vca-axis,.vca-call.is-working .vca-axis{background:rgba(255,224,51,.5)}.vca-call.is-ended .vca-axis{background:rgba(255,255,255,.14)}.vca-call[data-cut="1"] .vca-axis{background:var(--surface);transition:none}.vca-ping{position:absolute;inset-inline:0;inset-block-start:50%;block-size:1px;margin-block-start:-.4px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.85),transparent);transform:scaleX(.12);transform-origin:50% 50%;opacity:0;pointer-events:none}.vca-call.is-starting .vca-ping{animation:vca-ping 1.7s var(--ease-io) infinite}.vca-call.is-thinking .vca-ping,.vca-call.is-warming .vca-ping,.vca-call.is-working .vca-ping{animation:vca-ping 1.15s var(--ease-io) infinite;background:linear-gradient(90deg,transparent,rgba(255,224,51,.9),transparent)}@keyframes vca-ping{0%{opacity:0;transform:scaleX(.12)}35%{opacity:.75}to{opacity:0;transform:scaleX(1.9)}}.vca-bars{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;gap:clamp(6px,2.2vw,10px);color:rgba(255,255,255,.28);pointer-events:none}.vca-bars i{inline-size:3px;block-size:50%;border-radius:999px;background:currentColor;transform:scaleY(var(--v,.03));transform-origin:50% 0;transition:transform .07s linear}.vca-call.is-listening .vca-bars{color:var(--surface-2)}.vca-call.is-speaking .vca-bars,.vca-call.is-thinking .vca-bars,.vca-call.is-warming .vca-bars{align-items:flex-start;color:var(--accent)}.vca-call.is-speaking .vca-bars i,.vca-call.is-thinking .vca-bars i,.vca-call.is-warming .vca-bars i{transform-origin:50% 100%}.vca-call.is-idle .vca-bars,.vca-call.is-starting .vca-bars{opacity:0}.vca-cut{position:absolute;inset:0;z-index:1;background:none;border:0;padding:0;cursor:pointer;border-radius:inherit;transition:background .15s}.vca-cut:hover{background:rgba(255,255,255,.06)}.vca-cut:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.vca-cut span{position:absolute;inset-block-end:8px;inset-inline:0;margin-inline:auto;inline-size:fit-content;padding:3px 10px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);color:rgba(255,255,255,.72);font-size:var(--fs-2xs);font-weight:500;pointer-events:none;transition:background .15s,color .15s}.vca-cut:hover span{background:rgba(255,255,255,.18);color:#fff}.vca-subs{flex:1 1 auto;min-block-size:96px;overflow-y:auto;overscroll-behavior:contain;margin:12px 16px 0;padding:12px 16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:var(--r-chip);font-size:var(--fs-body);line-height:var(--lh-body);overflow-wrap:anywhere;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.28) transparent}.vca-line{margin:0;color:#fff}.vca-line+.vca-line{margin-block-start:10px}.vca-line.me{color:#aeb6cd;padding-inline-start:10px;border-inline-start:1px solid rgba(255,255,255,.22)}.vca-line.live{color:var(--line);border-inline-start-color:var(--accent)}.vca-line.cut{color:#aeb6cd}.vca-line.cut:after{content:"\2026"}.vca-wait{display:flex;gap:5px;align-items:center;block-size:1lh}.vca-wait i{inline-size:5px;block-size:5px;border-radius:50%;background:var(--accent);opacity:.35;animation:vca-wait 1.1s var(--ease-io) infinite}.vca-wait i:nth-child(2){animation-delay:.16s}.vca-wait i:nth-child(3){animation-delay:.32s}@keyframes vca-wait{0%,70%,to{opacity:.3;transform:none}35%{opacity:1;transform:translateY(-3px)}}.vca-why{line-height:var(--lh-ui)}.vca-note,.vca-why{margin:10px 16px 0;font-size:var(--fs-xs);color:#aeb6cd}.vca-note{line-height:var(--lh-body)}.vca-err{margin:10px 16px 0;padding:8px 12px;border-radius:var(--r-chip);background:rgba(214,69,58,.16);border:1px solid rgba(255,180,168,.26);color:#ffb4a8;font-size:var(--fs-sm);line-height:var(--lh-ui)}.vca-sr{position:absolute;inline-size:1px;block-size:1px;margin:-1px;padding:0;border:0;clip-path:inset(50%);overflow:hidden;white-space:nowrap}.vca-mail-open{display:inline-flex;align-items:center;margin:10px 16px 0;padding:4px 0;background:none;border:0;cursor:pointer;color:var(--accent);font-family:var(--sans);font-size:var(--fs-sm);font-weight:500;text-decoration:underline;text-underline-offset:3px}.vca-mail-open:hover{color:#fff}.vca-mail-open:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:6px}.vca-mail{display:flex;flex-wrap:wrap;gap:8px;margin:10px 16px 0;align-items:center}.vca-mail input{flex:1 1 180px;min-inline-size:0;block-size:40px;padding:0 12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);border-radius:var(--r-ctl);color:#fff;font-family:var(--sans);font-size:var(--fs-md);outline:none;transition:border-color .15s}@media (max-width:600px){.vca-mail input{font-size:16px}}.vca-mail input::placeholder{color:rgba(255,255,255,.44)}.vca-mail input:focus-visible{border-color:var(--accent)}.vca-mail input[aria-invalid=true]{border-color:#ffb4a8}.vca-mail button{flex:none;block-size:40px;padding:0 16px;border-radius:var(--r-ctl);background:var(--accent);border:1px solid var(--accent-p);color:var(--accent-ink);font-weight:600;font-size:var(--fs-md);cursor:pointer;transition:background .15s}.vca-mail button:hover{background:var(--accent-p)}.vca-mail button:focus-visible{outline:3px solid var(--surface);outline-offset:2px}.vca-mail-ok{margin:0;font-size:var(--fs-sm);color:#8ee6b0}.vca-mail-ok b{font-weight:600}.vca-mail-err{flex:1 0 100%;margin:0;font-size:var(--fs-xs);color:#ffb4a8}.vca-act{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 16px calc(16px + env(safe-area-inset-bottom, 0px))}.vca-end{inline-size:56px;block-size:56px;border:none;border-radius:50%;background:var(--danger);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 20px rgba(214,69,58,.34);transition:transform .16s var(--ease-out),box-shadow .16s var(--ease-out)}.vca-end:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(214,69,58,.44)}.vca-end:active{transform:scale(.96)}.vca-end svg{inline-size:26px;block-size:26px}.vca-cap{font-size:var(--fs-xs);color:#aeb6cd}.vca-go{inline-size:100%;min-block-size:48px;padding-inline:20px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:var(--r-pill);background:var(--accent);color:var(--accent-ink);font:inherit;font-size:var(--fs-md);font-weight:700;cursor:pointer;transition:transform var(--dur-1) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}.vca-go:hover{transform:translateY(-1px);box-shadow:0 6px 18px var(--accent-glow)}.vca-go:active{transform:scale(.98)}.vca-go:disabled{opacity:.5;transform:none;box-shadow:none;cursor:default}.vca-go:focus-visible{outline:3px solid var(--surface);outline-offset:2px}.vca-go svg{inline-size:18px;block-size:18px;flex:none}.vca-ghost{min-block-size:44px;padding-inline:16px;border:1px solid rgba(255,255,255,.22);border-radius:var(--r-pill);background:transparent;color:#fff;font:inherit;font-size:var(--fs-sm);font-weight:700;cursor:pointer;transition:background-color .16s var(--ease-io)}.vca-ghost:hover{background:rgba(255,255,255,.08)}.vca-call.is-ended .vca-act{flex-direction:row;gap:10px}.vca-call.is-ended .vca-go{inline-size:auto;flex:1 1 auto}@media (max-width:600px){.vca-call{inset-inline:8px;inline-size:auto;block-size:min(56dvh,420px);max-block-size:calc(100dvh - 142px - var(--mnav-lift, 0px) - var(--vca-cmp) - env(safe-area-inset-bottom, 0px) - 16px);border-radius:var(--r-card)}.vca-stage{block-size:108px}.vca-subs{font-size:16px}.vca-go{min-block-size:52px}}@media (max-height:560px){.vca-stage{block-size:72px}}@media (prefers-reduced-motion:reduce){.vca-call{animation:none}.vca-bars i{transition:transform .2s var(--ease-io)}.vca-ping{animation:none!important;opacity:0}.vca-wait i{animation:none;opacity:.8}.vca-call.is-starting .vca-axis,.vca-call.is-thinking .vca-axis,.vca-call.is-warming .vca-axis{background:repeating-linear-gradient(90deg,rgba(255,255,255,.55) 0 6px,transparent 6px 12px)}.vca-call.is-speaking .vca-axis{background:rgba(255,224,51,.7)}.vca-call.is-starting .vca-bars{opacity:1}.vca-axis,.vca-end,.vca-fab,.vca-ghost,.vca-go,.vca-tline i,.vca-x{transition:none}.vca-end:hover,.vca-fab:hover,.vca-go:hover{transform:none}body:not(:has(.vca-call)) .vca-fab.live:after{animation:none;opacity:.5;transform:scale(1.3)}}