.mic-perm-banner{position:fixed;top:0;left:0;right:0;z-index:9000;display:flex;align-items:center;gap:14px;padding:12px 20px;background:linear-gradient(to right,var(--color-status-error,#ef4444),var(--color-god-default,#f6851f));color:var(--color-text-inverse,#fff);font-family:Hanken Grotesk,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.35;box-shadow:0 6px 18px rgba(0,0,0,.28);border-bottom:1px solid rgba(0,0,0,.18);animation:mic-perm-banner-drop .22s ease-out}@keyframes mic-perm-banner-drop{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.mic-perm-banner__icon{font-size:22px;line-height:1;flex:0 0 auto}.mic-perm-banner__body{flex:1 1 auto;min-width:0}.mic-perm-banner__title{font-weight:700;font-size:15px;letter-spacing:.01em}.mic-perm-banner__msg{font-weight:500;opacity:.94;margin-top:2px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.mic-perm-banner__action{flex:0 0 auto;padding:8px 14px;border-radius:999px;background:hsla(0,0%,100%,.18);color:var(--color-text-inverse,#fff);font-weight:600;text-decoration:none;border:1px solid hsla(0,0%,100%,.35);transition:background .12s ease,transform .12s ease;white-space:nowrap}.mic-perm-banner__action:focus-visible,.mic-perm-banner__action:hover{background:hsla(0,0%,100%,.32);outline:none;transform:translateY(-1px)}.mic-perm-banner__dismiss{flex:0 0 auto;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:transparent;color:var(--color-text-inverse,#fff);border:1px solid hsla(0,0%,100%,.35);cursor:pointer;padding:0;transition:background .12s ease}.mic-perm-banner__dismiss:focus-visible,.mic-perm-banner__dismiss:hover{background:hsla(0,0%,100%,.2);outline:none}@media (max-width:640px){.mic-perm-banner{flex-wrap:wrap;row-gap:10px;padding:12px 14px}.mic-perm-banner__body{flex:1 1 100%;order:1}.mic-perm-banner__icon{order:0}.mic-perm-banner__action{order:2;flex:1 1 auto;text-align:center}.mic-perm-banner__dismiss{order:3}}.mic-perm-modal-scrim{position:fixed;inset:0;background:rgba(10,12,18,.55);z-index:9100;display:flex;align-items:center;justify-content:center;padding:20px;animation:mic-perm-scrim-fade .16s ease-out}@keyframes mic-perm-scrim-fade{0%{opacity:0}to{opacity:1}}.mic-perm-modal{background:var(--color-bg-surface,#fff);color:var(--color-text-primary,#16181d);border-radius:14px;box-shadow:0 24px 60px rgba(0,0,0,.35);max-width:560px;width:100%;max-height:90vh;overflow-y:auto;padding:24px 26px 20px;font-family:Hanken Grotesk,system-ui,-apple-system,sans-serif}.mic-perm-modal__head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.mic-perm-modal__title{font-size:18px;font-weight:700;margin:0;color:var(--color-text-primary,#16181d)}.mic-perm-modal__close{background:transparent;border:none;font-size:26px;line-height:1;cursor:pointer;color:var(--color-text-secondary,#5b626f);padding:4px 8px;border-radius:6px}.mic-perm-modal__close:focus-visible,.mic-perm-modal__close:hover{background:var(--color-bg-secondary,#e4e7ee);outline:none}.mic-perm-modal__lede{font-size:14px;color:var(--color-text-secondary,#5b626f);margin:0 0 16px}.mic-perm-modal__section{margin-top:14px;padding:14px 16px;background:var(--color-bg-elevated,#f4f6fa);border-radius:10px;border:1px solid var(--color-bg-secondary,#e4e7ee)}.mic-perm-modal__h3{margin:0 0 8px;font-size:13px;font-weight:700;color:var(--color-accent-default,#2c6bed);text-transform:uppercase;letter-spacing:.05em}.mic-perm-modal__steps{margin:0;padding-left:20px;font-size:14px;color:var(--color-text-primary,#16181d)}.mic-perm-modal__steps li{margin:4px 0}.mic-perm-modal__p{margin:6px 0 0;font-size:14px;color:var(--color-text-primary,#16181d)}.mic-perm-modal__code{display:inline-block;padding:2px 6px;border-radius:4px;background:var(--color-bg-secondary,#e4e7ee);color:var(--color-text-primary,#16181d);font-family:JetBrains Mono,ui-monospace,monospace;font-size:12.5px;word-break:break-all}:root[data-theme=dark] .mic-perm-modal{background:#1a1c22;color:#e9ecf2;box-shadow:0 24px 60px rgba(0,0,0,.6)}:root[data-theme=dark] .mic-perm-modal__p,:root[data-theme=dark] .mic-perm-modal__steps,:root[data-theme=dark] .mic-perm-modal__title{color:#e9ecf2}:root[data-theme=dark] .mic-perm-modal__lede{color:#b6bcc6}:root[data-theme=dark] .mic-perm-modal__section{background:#22252c;border-color:#2a2e36}:root[data-theme=dark] .mic-perm-modal__code{background:#2a2e36;color:#e9ecf2}.vtw,.vtw-pill{position:fixed;right:22px;bottom:22px;z-index:85;font-family:var(--f-body);color:var(--ink-100,#f4f7ff);--vtw-accent:var(--color-section-talk,#9d7cff)}.vtw{width:360px;max-height:62vh;display:flex;flex-direction:column;border-radius:var(--r-3,14px);background:linear-gradient(180deg,var(--glass-2,rgba(20,40,84,.32)),var(--glass-1,rgba(14,28,58,.22)));backdrop-filter:blur(34px) saturate(170%);-webkit-backdrop-filter:blur(34px) saturate(170%);border:1px solid var(--line-2,hsla(0,0%,100%,.18));box-shadow:var(--glass-edge),var(--glass-shadow);overflow:hidden;animation:vtw-rise .28s var(--ease-spring,cubic-bezier(.34,1.56,.64,1))}.vtw-scrim{position:fixed;inset:0;z-index:85;display:flex;align-items:center;justify-content:center;background:rgba(6,10,22,.42);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:vtw-scrim-in .2s ease-out}@keyframes vtw-scrim-in{0%{opacity:0}to{opacity:1}}.vtw.vtw--max{position:relative;right:auto;bottom:auto;width:min(640px,calc(100vw - 48px));height:70vh;max-height:70vh}@keyframes vtw-rise{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.vtw-head{display:flex;align-items:center;gap:8px;padding:9px 10px 9px 12px;border-bottom:1px solid var(--line,hsla(0,0%,100%,.1));background:linear-gradient(180deg,rgba(157,124,255,.12),transparent)}.vtw-title{font-family:var(--f-display,serif);font-weight:600;letter-spacing:.14em;font-size:.72rem;text-transform:uppercase}.vtw-mic{color:var(--vtw-accent);opacity:.92}.vtw-state{font-family:var(--f-mono,monospace);font-size:.6rem;color:var(--ink-300,#8a94ad);letter-spacing:.04em}.vtw-spacer{flex:1}.vtw-btn{display:grid;place-items:center;width:22px;height:22px;border-radius:6px;background:transparent;border:1px solid transparent;color:var(--ink-300,#8a94ad);cursor:pointer;transition:all .15s var(--ease-soft,ease)}.vtw-btn:hover{color:var(--ink-100,#f4f7ff);background:var(--surface-2,hsla(0,0%,100%,.07));border-color:var(--line,hsla(0,0%,100%,.1))}.vtw-dot{width:7px;height:7px;border-radius:50%;background:var(--ink-400,#5a6480);flex:none}.vtw-dot.is-active{background:var(--vtw-accent);animation:vtw-pulse 1.4s ease-out infinite}@keyframes vtw-pulse{0%{box-shadow:0 0 0 0 rgba(157,124,255,.45)}70%{box-shadow:0 0 0 7px rgba(157,124,255,0)}to{box-shadow:0 0 0 0 rgba(157,124,255,0)}}.vtw-bodywrap{position:relative}.vtw-body,.vtw-bodywrap{flex:1;min-height:0;display:flex;flex-direction:column}.vtw-body{overflow-y:auto;padding:12px;gap:10px;scrollbar-width:thin;overscroll-behavior:contain}.vtw-jump{position:absolute;right:14px;bottom:10px;z-index:2;display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;border:1px solid var(--line-2,hsla(0,0%,100%,.18));background:linear-gradient(180deg,var(--glass-2,rgba(20,40,84,.62)),var(--glass-1,rgba(14,28,58,.55)));backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);box-shadow:var(--glass-edge),var(--glass-shadow);color:var(--ink-100,#f4f7ff);font-family:var(--f-mono,monospace);font-size:.54rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;animation:vtw-rise .2s var(--ease-spring,cubic-bezier(.34,1.56,.64,1))}.vtw-jump:hover{border-color:var(--vtw-accent,#9d7cff);color:var(--vtw-accent,#9d7cff)}.vtw-body::-webkit-scrollbar{width:6px}.vtw-body::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.14);border-radius:3px}.vtw-turn{display:flex;flex-direction:column;gap:2px;max-width:92%}.vtw-turn.vtw-user{align-self:flex-end;align-items:flex-end}.vtw-turn.vtw-shiva{align-self:flex-start;align-items:flex-start}.vtw-who{font-family:var(--f-mono,monospace);font-size:.54rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-400,#5a6480)}.vtw-text{margin:0;padding:7px 11px;border-radius:12px;font-size:.82rem;line-height:1.45;white-space:pre-wrap;word-break:break-word}.vtw-user .vtw-text{background:linear-gradient(180deg,rgba(157,124,255,.78),rgba(120,92,220,.72));border:1px solid rgba(200,180,255,.6);border-bottom-right-radius:4px;color:#fff;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.12),0 4px 12px rgba(90,60,180,.28)}.vtw-shiva .vtw-text{background:linear-gradient(180deg,rgba(18,30,58,.85),rgba(10,20,42,.78));border:1px solid hsla(0,0%,100%,.22);border-bottom-left-radius:4px;color:#f4f7ff;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.06)}.vtw-deva{font-family:var(--f-deva,serif)}.vtw-md .md>:first-child{margin-top:0}.vtw-md .md>:last-child{margin-bottom:0}.vtw-md .md p{margin:0 0 7px}.vtw-md .md h1,.vtw-md .md h2,.vtw-md .md h3{font-weight:800;line-height:1.3;margin:10px 0 6px;font-size:1em}.vtw-md .md ol,.vtw-md .md ul{margin:6px 0;padding-left:20px}.vtw-md .md li{margin:3px 0}.vtw-md .md strong{font-weight:800}.vtw-md .md a{color:#9ecbff;text-decoration:underline}.vtw-md .md code{font-family:var(--f-mono,monospace);font-size:.88em;background:hsla(0,0%,100%,.1);border-radius:5px;padding:1px 4px}.vtw-md .md pre{margin:7px 0;background:rgba(0,0,0,.28);border-radius:8px;padding:9px 11px;overflow-x:auto}.vtw-md .md pre code{background:none;padding:0}.vtw-live .vtw-text{opacity:.8;font-style:italic}.vtw-caret{display:inline-block;width:7px;height:1em;margin-left:2px;background:var(--vtw-accent);vertical-align:text-bottom;animation:vtw-blink 1s steps(2) infinite}@keyframes vtw-blink{50%{opacity:0}}.vtw-foot{display:flex;align-items:center;gap:8px;padding:7px 12px;border-top:1px solid var(--line,hsla(0,0%,100%,.1));font-family:var(--f-mono,monospace);font-size:.58rem;color:var(--ink-400,#5a6480)}.vtw-foot-hint{flex:1;letter-spacing:.03em}.vtw-foot-clear{background:transparent;border:none;color:var(--ink-300,#8a94ad);cursor:pointer;font:inherit;text-transform:uppercase;letter-spacing:.08em}.vtw-foot-clear:hover{color:var(--vtw-accent)}.vtw-pill{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:linear-gradient(180deg,var(--glass-2,rgba(20,40,84,.32)),var(--glass-1,rgba(14,28,58,.22)));backdrop-filter:blur(28px) saturate(170%);-webkit-backdrop-filter:blur(28px) saturate(170%);border:1px solid var(--line-2,hsla(0,0%,100%,.18));box-shadow:var(--glass-edge),var(--glass-shadow);color:var(--ink-100,#f4f7ff);cursor:pointer;font-family:var(--f-body);font-size:.74rem;max-width:300px;animation:vtw-rise .28s var(--ease-spring,ease);transition:transform .18s var(--ease-soft,ease),border-color .18s ease}.vtw-pill:hover{transform:translateY(-1px);border-color:rgba(157,124,255,.5)}.vtw-pill .vtw-mic{color:var(--vtw-accent)}.vtw-pill-label{font-weight:600;letter-spacing:.02em;white-space:nowrap}.vtw-pill-snippet{color:var(--ink-300,#8a94ad);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px;border-left:1px solid var(--line,hsla(0,0%,100%,.1));padding-left:8px}@media (max-width:560px){.vtw{width:calc(100vw - 32px);right:16px;bottom:16px}.vtw.vtw--max{width:calc(100vw - 24px);height:82vh;max-height:82vh}}.vtw-composer{position:relative;display:flex;align-items:flex-end;gap:6px;padding:8px 10px;border-top:1px solid var(--line,hsla(0,0%,100%,.1));background:linear-gradient(180deg,transparent,rgba(0,0,0,.14))}.vtw-input{flex:1;min-height:32px;max-height:116px;resize:none;padding:7px 10px;border-radius:10px;border:1px solid var(--line-2,hsla(0,0%,100%,.18));background:rgba(6,12,26,.55);color:var(--ink-100,#f4f7ff);font-family:var(--f-body);font-size:.85rem;line-height:1.4;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.vtw-input::-moz-placeholder{color:var(--ink-400,#5a6480)}.vtw-input::placeholder{color:var(--ink-400,#5a6480)}.vtw-input:focus{border-color:rgba(157,124,255,.55);box-shadow:0 0 0 3px rgba(157,124,255,.16)}.vtw-input:disabled{opacity:.6;cursor:wait}.vtw-attach,.vtw-send{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;border:1px solid var(--line-2,hsla(0,0%,100%,.18));background:rgba(6,12,26,.55);color:var(--ink-200,#c8d2e4);cursor:pointer;transition:color .15s ease,background .15s ease,border-color .15s ease,transform .1s ease;flex:none}.vtw-attach:hover,.vtw-send:hover:not(:disabled){color:var(--ink-100,#f4f7ff);background:rgba(157,124,255,.16);border-color:rgba(157,124,255,.42)}.vtw-send{color:#fff;background:linear-gradient(180deg,rgba(157,124,255,.9),rgba(120,92,220,.85));border-color:rgba(200,180,255,.5)}.vtw-send:disabled{opacity:.45;cursor:not-allowed}.vtw-send:active:not(:disabled){transform:translateY(1px)}.vtw-composer-hint{position:absolute;left:12px;right:12px;bottom:calc(100% + 4px);padding:6px 10px;border-radius:8px;background:rgba(6,12,26,.9);border:1px solid var(--line-2,hsla(0,0%,100%,.18));color:var(--ink-200,#c8d2e4);font-family:var(--f-mono,monospace);font-size:.66rem;letter-spacing:.02em;pointer-events:none}.pm-stack{position:fixed;top:64px;right:22px;z-index:84;display:flex;flex-direction:column;gap:10px;width:340px;max-width:calc(100vw - 32px);pointer-events:none}.pm-card{pointer-events:auto;border-radius:var(--r-3,14px);background:linear-gradient(180deg,var(--glass-2,rgba(20,40,84,.32)),var(--glass-1,rgba(14,28,58,.22)));backdrop-filter:blur(34px) saturate(170%);-webkit-backdrop-filter:blur(34px) saturate(170%);border:1px solid rgba(157,124,255,.34);box-shadow:var(--glass-edge),var(--glass-shadow);color:var(--ink-100,#f4f7ff);font-family:var(--f-body);overflow:hidden;animation:vtw-rise .3s var(--ease-spring,cubic-bezier(.34,1.56,.64,1))}.pm-head{display:flex;align-items:center;gap:8px;padding:8px 10px 6px 12px;border-bottom:1px solid var(--line,hsla(0,0%,100%,.1));background:linear-gradient(180deg,rgba(157,124,255,.14),transparent)}.pm-dot{width:7px;height:7px;border-radius:50%;background:var(--color-section-talk,#9d7cff);animation:vtw-pulse 1.4s ease-out infinite;flex:none}.pm-title{font-family:var(--f-display,serif);font-weight:600;letter-spacing:.1em;font-size:.66rem;text-transform:uppercase}.pm-cat{font-family:var(--f-mono,monospace);font-size:.54rem;color:var(--ink-300,#8a94ad);letter-spacing:.04em}.pm-spacer{flex:1}.pm-x{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:transparent;border:none;color:var(--ink-300,#8a94ad);cursor:pointer}.pm-x:hover{background:var(--surface-2,hsla(0,0%,100%,.07))}.pm-text,.pm-x:hover{color:var(--ink-100,#f4f7ff)}.pm-text{margin:0;padding:9px 12px 11px;font-size:.84rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}