.microphone-settings{max-width:520px}.microphone-intro{margin:0 0 20px;line-height:1.7}.microphone-field{display:block;font-weight:600;margin-bottom:8px}.microphone-settings select{width:100%;min-height:48px;padding:10px 12px;border:1px solid var(--line-hi);border-radius:12px;color:inherit;background:var(--surface-solid);font:inherit}.microphone-settings select:focus-visible{outline:2px solid var(--accent, #83d4cb);outline-offset:3px}.microphone-note,.microphone-test small{font-size:13px;line-height:1.65;color:var(--text-2)}.microphone-actions{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.microphone-actions button{min-height:44px;cursor:pointer}.microphone-actions svg{width:16px;height:16px}.microphone-test{display:grid;gap:12px;padding:18px;border:1px solid var(--line-hi);border-radius:16px}.microphone-test span{overflow-wrap:anywhere}.microphone-test meter{width:100%;height:22px;accent-color:var(--ok)}.microphone-message{padding:12px 14px;border-radius:12px;background:#725d2726;line-height:1.6}:root{color-scheme:dark;--bg-0: #05070b;--bg-1: #0a0e15;--surface: rgba(255, 255, 255, .045);--surface-hi: rgba(255, 255, 255, .08);--surface-solid: #0e131c;--line: rgba(255, 255, 255, .08);--line-hi: rgba(255, 255, 255, .14);--text-1: #eaf2ff;--text-2: rgba(234, 242, 255, .62);--text-3: rgba(234, 242, 255, .38);--glow: #bfe6ff;--glow-core: #f4fbff;--accent: #6fb8ff;--accent-ink: #04111f;--ok: #7be0b5;--warn: #ffc27a;--err: #ff8a8a;--warm: #ffd7a8;--ease: cubic-bezier(.22, 1, .36, 1);--radius-card: 24px;--radius-chip: 12px;--shadow-deep: 0 30px 80px rgba(0, 0, 0, .45);--inner-hi: inset 0 1px 0 rgba(255, 255, 255, .06);--fs-caption: clamp(19px, 1.02vw + .2vh, 28px);--fs-read: clamp(15px, .66vw + .1vh, 19px);--fs-small: clamp(13px, .52vw + .1vh, 15px);--fs-input: clamp(15px, .64vw + .12vh, 18px);--dock-gap: clamp(20px, 3.9vh, 56px);--face-w: clamp(560px, min(48.8vw, 86.8vh), 1440px);--visible-height: 100dvh;font-family:-apple-system,SF Pro Display,SF Pro Text,PingFang SC,HarmonyOS Sans SC,Microsoft YaHei,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:.01em;color:var(--text-1);background:var(--bg-0)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;min-width:320px;overflow:hidden;background:var(--bg-0);color:var(--text-1);line-height:1.6}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none;padding:0;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed}a{color:var(--accent);text-decoration:none;-webkit-tap-highlight-color:transparent}svg{flex:none}button svg,a svg{width:1.15em;height:1.15em;stroke-width:1.75}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:10px}::selection{background:#6fb8ff52}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:8px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-track{background:transparent}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.glass{background:var(--surface);border:1px solid var(--line);box-shadow:var(--inner-hi),var(--shadow-deep);-webkit-backdrop-filter:blur(24px) saturate(140%);backdrop-filter:blur(24px) saturate(140%)}.eyebrow{display:block;font-size:11px;letter-spacing:.18em;font-weight:600;color:var(--text-3);text-transform:uppercase}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--text-3);flex:none}.dot-ok{background:var(--ok);box-shadow:0 0 10px #7be0b5b3}.dot-warn{background:var(--warn);box-shadow:0 0 10px #ffc27a99}.screen{position:fixed;inset:0}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border-radius:999px;font-weight:600;letter-spacing:.02em;transition:transform .2s var(--ease),background .2s,box-shadow .25s,opacity .2s}.primary-button{background:linear-gradient(180deg,#8ac6ff,var(--accent));color:var(--accent-ink);box-shadow:0 10px 30px #6fb8ff47,inset 0 1px #fff6}.primary-button:hover:not(:disabled){box-shadow:0 14px 40px #6fb8ff66,inset 0 1px #ffffff73;transform:translateY(-1px)}.primary-button:active:not(:disabled),.secondary-button:active:not(:disabled){transform:scale(.97)}.secondary-button{background:var(--surface);border:1px solid var(--line-hi);color:var(--text-1)}.secondary-button:hover:not(:disabled){background:var(--surface-hi)}.primary-button:disabled,.secondary-button:disabled{opacity:.5}.full-width{width:100%}.icon-button{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;color:var(--text-2);transition:background .2s,color .2s,transform .2s var(--ease)}.icon-button:hover:not(:disabled){background:var(--surface-hi);color:var(--text-1)}.icon-button:disabled{opacity:.4}.chip{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--line-hi);background:#ffffff0a;color:var(--text-1);font-size:var(--fs-small);line-height:1.3;transition:background .2s,border-color .2s,transform .25s var(--ease),color .2s}.chip svg{width:15px;height:15px;color:var(--text-2)}.chip:hover:not(:disabled){background:var(--surface-hi);border-color:#ffffff38;transform:translateY(-2px)}.chip:disabled{opacity:.45}.chip-primary{border-color:#6fb8ff73;background:#6fb8ff1f;color:#d6ebff}.chip-primary svg{color:var(--accent)}.inline-note{margin:12px 0 0;font-size:var(--fs-small);color:var(--text-2);line-height:1.6}.inline-error,.form-error{margin:12px 0 0;color:var(--err);font-size:var(--fs-small)}.empty-state{display:grid;justify-items:center;gap:10px;padding:40px 16px;text-align:center;color:var(--text-2)}.empty-state>svg{width:30px;height:30px;color:var(--text-3)}.empty-state h3{margin:4px 0 0;color:var(--text-1);font-size:17px;font-weight:600}.empty-state p{margin:0;font-size:var(--fs-small)}.empty-state.is-success>svg{color:var(--ok);width:40px;height:40px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.12s!important}.spin{animation:spin .9s linear infinite!important;animation-duration:.9s!important;animation-iteration-count:infinite!important}}.face{--face-bloom: .22;position:relative;width:100%;aspect-ratio:1000 / 620;color:var(--glow);user-select:none;-webkit-user-select:none;touch-action:manipulation;transition:color 1.2s var(--ease)}.face[role=img]{cursor:default}.stage-face .face{cursor:pointer}.face-head{position:absolute;inset:0;transform-origin:50% 62%;will-change:transform}.face-part{position:absolute;transform:translate(-50%,-50%);will-change:transform}.face-part svg{display:block;width:100%;height:100%;overflow:visible}.face-eye svg,.face-mouth svg{filter:drop-shadow(0 0 calc(var(--face-unit, 1px) * 14) color-mix(in srgb,currentColor 55%,transparent)) drop-shadow(0 0 calc(var(--face-unit, 1px) * 42) color-mix(in srgb,currentColor calc(var(--face-bloom) * 100%),transparent))}.face-fill{fill:var(--glow-core);stroke:none}.face-eye .face-fill,.face-glyph .face-fill{fill:color-mix(in srgb,var(--glow-core) 62%,currentColor)}.face-glyph .face-fill[data-stroke="1"]{fill:none;stroke:color-mix(in srgb,var(--glow-core) 62%,currentColor);stroke-linecap:round;stroke-linejoin:round}.face-brow{fill:none;stroke:currentColor;stroke-width:8;stroke-linecap:round;opacity:.72}.face-base,.face-glyph{transform-box:view-box;transform-origin:0 0}.face-mouth-line{fill:color-mix(in srgb,var(--glow-core) 62%,currentColor);stroke:color-mix(in srgb,var(--glow-core) 62%,currentColor);stroke-width:15;stroke-linejoin:round;stroke-linecap:round}.face-ring{fill:none;stroke:currentColor;stroke-width:6;stroke-linecap:round;opacity:0;filter:drop-shadow(0 0 8px currentColor)}.face-ok{fill:none;stroke:var(--ok);stroke-width:7;opacity:0;filter:drop-shadow(0 0 14px var(--ok))}.face-blush{position:absolute;top:61%;width:15%;height:9%;border-radius:50%;background:radial-gradient(closest-side,#ff96afbf,#ff96af00);filter:blur(6px);opacity:0;pointer-events:none}.face-blush-l{left:26.5%}.face-blush-r{left:58.5%}.face-z{position:absolute;left:70%;top:6%;width:18%;height:34%;pointer-events:none;display:none}.face[data-sleep="1"] .face-z{display:block}.face-z b{position:absolute;bottom:0;left:0;font-weight:600;font-size:calc(var(--face-unit, 1px) * 46);color:var(--glow);opacity:0;text-shadow:0 0 12px currentColor;animation:z-float 3.6s var(--ease) infinite}.face-z b:nth-child(2){animation-delay:1.2s;font-size:calc(var(--face-unit, 1px) * 38)}.face-z b:nth-child(3){animation-delay:2.4s;font-size:calc(var(--face-unit, 1px) * 30)}@keyframes z-float{0%{opacity:0;transform:translate(0) rotate(-8deg)}20%{opacity:.55}to{opacity:0;transform:translate(calc(var(--face-unit, 1px) * 70),calc(var(--face-unit, 1px) * -150)) rotate(12deg)}}.face-ice{position:absolute;left:50%;top:30%;pointer-events:none}.face-ice b{position:absolute;width:calc(var(--face-unit, 1px) * 16);height:calc(var(--face-unit, 1px) * 16);border-radius:3px;background:#dff4ff;box-shadow:0 0 12px #9fd8ff;opacity:0;transform:rotate(45deg)}.face[data-ice="1"] .face-ice b{animation:ice-out 1.3s var(--ease) forwards}.face[data-ice="1"] .face-ice b:nth-child(1){--tx: -60;--ty: -110}.face[data-ice="1"] .face-ice b:nth-child(2){--tx: 6;--ty: -150;animation-delay:.08s}.face[data-ice="1"] .face-ice b:nth-child(3){--tx: 70;--ty: -104;animation-delay:.16s}@keyframes ice-out{0%{opacity:0;transform:translate(0) rotate(45deg) scale(.4)}25%{opacity:.9}to{opacity:0;transform:translate(calc(var(--face-unit, 1px) * var(--tx)),calc(var(--face-unit, 1px) * var(--ty))) rotate(225deg) scale(1)}}.aura{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:var(--bg-0)}.aura-layer{position:absolute;left:50%;top:var(--aura-y, 38%);width:max(150vw,150vh);aspect-ratio:1;transform:translate(-50%,-50%);transition:opacity 1.2s var(--ease),top .8s var(--ease)}.aura-base{background:radial-gradient(closest-side,rgba(70,120,190,.2),rgba(25,45,80,.1) 38%,transparent 70%)}.aura-cold{background:radial-gradient(closest-side,rgba(110,200,255,.24),transparent 62%)}.aura-warm{background:radial-gradient(closest-side,rgba(255,190,130,.18),transparent 60%)}.aura-err{background:radial-gradient(closest-side,rgba(255,110,110,.18),transparent 60%)}.aura-ok{background:radial-gradient(closest-side,rgba(123,224,181,.2),transparent 60%)}.aura-pulse{position:absolute;left:50%;top:var(--aura-y, 38%);width:min(80vw,120vh);aspect-ratio:1;margin:calc(min(80vw,120vh)/-2) 0 0 calc(min(80vw,120vh)/-2);border-radius:50%;background:radial-gradient(closest-side,rgba(150,210,255,.07),transparent 70%);transition:top .8s var(--ease),transform .12s linear}.aura-vignette{position:absolute;inset:0;background:radial-gradient(130% 100% at 50% 40%,transparent 52%,rgba(0,0,0,.62) 100%)}.aura-grain{position:absolute;inset:-50%;opacity:.035;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}.aura-motes{position:absolute;left:50%;top:var(--aura-y, 38%);width:min(70vw,1200px);height:min(60vh,760px);transform:translate(-50%,-50%);transition:top .8s var(--ease)}.aura-motes b{position:absolute;left:calc(8% + var(--i) * 11.5%);top:calc(18% + mod(var(--i) * 37,64)*1%);width:4px;height:4px;border-radius:50%;background:#cbe9ff;box-shadow:0 0 8px #9fd8ff;opacity:0;animation:mote 14s ease-in-out infinite;animation-delay:calc(var(--i) * -1.8s)}@keyframes mote{0%,to{opacity:0;transform:translateY(18px)}30%,70%{opacity:.22}50%{transform:translate(14px,-26px)}}.app[data-offline=true] .aura-motes,.app[data-face=call] .aura-motes{display:none}@media(prefers-reduced-motion:reduce){.aura-motes{display:none}}.app{position:fixed;inset:0;height:var(--visible-height, 100dvh);display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;--aura-y: 42%;--caption-max-height: min(116px, 17dvh)}.app[data-face=call]{--aura-y: 44%}.app[data-offline=true] .face{filter:brightness(.6) saturate(.7);transition:filter .8s var(--ease)}.topbar{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:clamp(14px,2.2vh,32px) clamp(16px,2.4vw,48px) 0}.topbar-actions{display:flex;align-items:center;gap:6px;margin-left:auto}.ghost-button{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 16px;border-radius:999px;color:var(--text-2);font-size:var(--fs-small);transition:background .2s,color .2s}.ghost-button:hover{background:var(--surface);color:var(--text-1)}.ghost-button.icon-only{width:44px;padding:0;justify-content:center}.ghost-button small{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--surface-hi);color:var(--text-2);font-size:11px;font-variant-numeric:tabular-nums}.device-chip{display:flex;align-items:center;gap:12px;min-width:0;max-width:min(440px,60vw);height:56px;padding:0 16px 0 8px;border-radius:999px;text-align:left;box-shadow:var(--inner-hi),0 12px 32px #0000004d;transition:background .2s,transform .25s var(--ease)}.device-chip:hover{background:var(--surface-hi)}.device-chip:active{transform:scale(.98)}.device-chip-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#ffffff0d;color:var(--text-2);flex:none}.device-chip-icon.is-running{color:var(--glow);background:#96d2ff1a;box-shadow:0 0 18px #96d2ff33}.device-chip-text{display:grid;min-width:0;line-height:1.3}.device-chip-text strong{font-size:15px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.device-chip-text small{display:flex;align-items:center;gap:6px;color:var(--text-3);font-size:12px;white-space:nowrap}.device-chip-temp{font-size:22px;font-weight:300;letter-spacing:-.02em;font-variant-numeric:tabular-nums;padding-left:10px;border-left:1px solid var(--line)}.device-chip-temp sup{font-size:12px;color:var(--text-3)}.device-chip-caret{color:var(--text-3);width:16px;height:16px}.stage{position:relative;z-index:1;min-width:0;min-height:0;container-type:size;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);justify-items:center;align-items:center;padding:0 clamp(16px,3vw,64px) 16px}.stage-face{position:relative;grid-area:1 / 1;top:calc(var(--caption-max-height) * -.6);width:min(180vw,max(96px,calc((100cqh - var(--caption-max-height) - 48px) * 2)));max-width:none;margin:0;pointer-events:none}.stage-face .face{pointer-events:auto}.app[data-face=call] .stage-face{top:0}.stage-caption{position:relative;grid-area:1 / 1;align-self:end;z-index:1;min-width:0;min-height:0;width:min(440px,100%);max-height:var(--caption-max-height);display:flex;justify-content:center;pointer-events:none}.stage-dock{position:relative;min-width:0;z-index:2;display:flex;justify-content:center;padding:0 clamp(12px,3vw,64px) calc(var(--dock-gap) + env(safe-area-inset-bottom))}.net-banner{position:fixed;top:0;left:50%;z-index:40;display:flex;align-items:center;gap:8px;margin-left:-180px;width:360px;justify-content:center;padding:8px 16px;border-radius:0 0 14px 14px;background:#ffc27a24;border:1px solid rgba(255,194,122,.3);border-top:0;color:var(--warn);font-size:13px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.net-banner svg{width:16px;height:16px}.net-banner.is-back{background:#7be0b524;border-color:#7be0b54d;color:var(--ok)}.boot{position:fixed;inset:0;display:grid;place-items:center;align-content:center;gap:8px}.boot-face{position:relative;z-index:1;width:min(var(--face-w),92vw)}.boot-text{position:relative;z-index:1;margin:calc(var(--face-w) * -.08) 0 0;color:var(--text-3);font-size:var(--fs-small);letter-spacing:.12em}.toast-anchor{position:fixed;top:clamp(16px,2.6vh,36px);left:50%;z-index:60;transform:translate(-50%);pointer-events:none}.toast{display:flex;align-items:center;gap:10px;max-width:min(560px,90vw);padding:10px 10px 10px 16px;border-radius:999px;background:#101620c7;border:1px solid var(--line-hi);box-shadow:var(--inner-hi),0 18px 50px #00000080;-webkit-backdrop-filter:blur(24px) saturate(140%);backdrop-filter:blur(24px) saturate(140%);font-size:14px;pointer-events:auto}.toast-icon{width:18px;height:18px;color:var(--glow)}.toast-ok .toast-icon{color:var(--ok)}.toast-error .toast-icon{color:var(--err)}.toast-close{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:var(--text-3)}.toast-close:hover{background:var(--surface-hi);color:var(--text-1)}.toast-close svg{width:15px;height:15px}.global-notice{position:fixed;top:24px;left:50%;z-index:60;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:10px 10px 10px 18px;border-radius:999px;color:var(--warn);font-size:14px}.global-notice button{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:var(--text-3)}.global-notice svg{width:15px;height:15px}.robot{position:absolute;inset:0;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.robot-canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab;outline:none}.robot-canvas:active{cursor:grabbing}.stage-robot{position:relative;grid-area:1 / 1;align-self:stretch;justify-self:stretch;min-height:0}.app[data-offline=true] .robot-canvas{filter:brightness(.6) saturate(.7);transition:filter .8s var(--ease)}.hero-robot{position:relative;width:min(100%,520px);aspect-ratio:4 / 5;max-height:72dvh;margin:0 auto}.hero-flat{width:100%}.robot-controls{position:absolute;top:4px;right:8px;z-index:3;display:grid;justify-items:end;gap:8px;max-width:calc(100% - 16px);pointer-events:none}.robot-controls>*{pointer-events:auto}.robot-fab{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#0e131c80;color:var(--text-2);box-shadow:var(--inner-hi);transition:background .2s,color .2s,transform .25s var(--ease)}.robot-fab:hover{background:#0e131cb8;color:var(--text-1)}.robot-fab:active{transform:scale(.94)}.robot-fab.is-open{color:var(--text-1);box-shadow:inset 0 0 0 1px #6fb8ff6b}.robot-fab svg{width:18px;height:18px}.robot-emotions{position:fixed;left:50%;bottom:calc(var(--dock-gap) + 88px + env(safe-area-inset-bottom));z-index:4;display:flex;flex-wrap:wrap;justify-content:center;gap:6px;width:min(520px,calc(100vw - 24px));padding:12px;border-radius:22px;background:#0e131cdb;box-shadow:var(--inner-hi),0 22px 60px #00000080;transform:translate(-50%);animation:emotion-rise .24s var(--ease)}@keyframes emotion-rise{0%{opacity:0;transform:translate(-50%,10px) scale(.98)}to{opacity:1;transform:translate(-50%) scale(1)}}@media(prefers-reduced-motion:reduce){.robot-emotions{animation:none}}.robot-chip{height:32px;padding:0 13px;border-radius:999px;border:1px solid var(--line-hi);background:#ffffff0a;color:var(--text-1);font-size:var(--fs-small);transition:background .2s,border-color .2s,transform .2s var(--ease)}.robot-chip:hover{background:var(--surface-hi);transform:translateY(-1px)}.robot-chip[aria-pressed=true]{border-color:#6fb8ff8c;background:#6fb8ff29}@media(max-width:767px){.robot-controls{top:0;right:2px}.robot-fab{width:36px;height:36px}}@media(max-width:767px){.robot-emotions{bottom:calc(var(--dock-gap) + 76px + env(safe-area-inset-bottom));gap:5px;padding:10px;border-radius:18px}.robot-chip{height:30px;padding:0 10px;font-size:13px}}.caption{display:flex;flex-direction:column;align-items:stretch;gap:6px;width:100%;max-width:100%;max-height:var(--caption-max-height);min-width:0;min-height:0;font-size:var(--fs-read);text-align:left;overflow-wrap:anywhere;pointer-events:auto}.caption-archive,.caption-heading{display:none}.caption-reading{font-size:var(--fs-read)}.caption-welcome{align-items:center;text-align:center}.caption-user{flex-shrink:0;min-height:1.5em;margin:0;max-width:100%;font-size:var(--fs-small);color:var(--text-2);line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.caption-user span{color:var(--text-3)}.caption-line{margin:0;color:var(--text-1);font-size:var(--fs-read);line-height:1.55;font-weight:400;letter-spacing:.01em;text-wrap:balance}.caption-line .markdown p{margin:0}.caption-phase{display:inline-flex;align-items:center;gap:12px;margin:0;color:var(--text-2);font-size:var(--fs-read);letter-spacing:.06em}.dots{display:inline-flex;gap:6px}.dots b{width:6px;height:6px;border-radius:50%;background:var(--glow);box-shadow:0 0 8px var(--glow);animation:dot 1.2s ease-in-out infinite}.dots b:nth-child(2){animation-delay:.16s}.dots b:nth-child(3){animation-delay:.32s}@keyframes dot{0%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.caption-live .reading-scroll{transition:font-size .35s var(--ease),line-height .35s var(--ease)}.reading-card{transition:max-height .35s var(--ease)}@media(prefers-reduced-motion:reduce){.caption-live .reading-scroll,.reading-card{transition:none}}.caption[data-skippable]{cursor:pointer}.stream-batch{animation:stream-in .16s var(--ease) both}@keyframes stream-in{0%{opacity:0;filter:blur(4px)}to{opacity:1;filter:blur(0)}}.reply-flow-lines,.reply-flow-text{min-width:0}.reply-flow-text{white-space:pre-wrap}.reply-flow-line{min-height:1.5em;white-space:pre-wrap;overflow-wrap:anywhere}.caption-live .reply-flow-line{white-space:pre}[data-reply-glyph][data-arriving=true],[data-reply-glyph][data-collected=true]{visibility:hidden}.reply-transfer{position:fixed;top:0;left:0;z-index:5;margin:0;color:var(--glow-core);line-height:1.2;white-space:pre;text-shadow:0 1px 8px rgba(0,0,0,.75);pointer-events:none}.stream-caret{display:inline-block;width:2px;height:1em;margin-left:2px;vertical-align:-.15em;background:var(--glow);box-shadow:0 0 8px var(--glow);animation:caret 1s steps(2) infinite}@keyframes caret{50%{opacity:0}}.markdown{overflow-wrap:anywhere}.markdown>:first-child{margin-top:0}.markdown>:last-child{margin-bottom:0}.markdown p{margin:0 0 .8em}.markdown ul,.markdown ol{margin:0 0 .8em;padding-left:1.4em}.markdown li{margin:.25em 0}.markdown li::marker{color:var(--text-3)}.markdown strong{color:var(--glow-core);font-weight:600}.markdown h1,.markdown h2,.markdown h3,.markdown h4{margin:1em 0 .5em;font-size:1.05em;font-weight:600}.markdown code{padding:.1em .4em;border-radius:6px;background:#ffffff12;font-size:.9em}.markdown pre{overflow-x:auto;padding:14px 16px;border-radius:14px;background:#00000059;border:1px solid var(--line)}.markdown pre code{padding:0;background:none}.markdown table{border-collapse:collapse;margin:0 0 .8em;font-size:.95em}.markdown th,.markdown td{padding:6px 12px;border:1px solid var(--line)}.markdown blockquote{margin:0 0 .8em;padding-left:14px;border-left:2px solid var(--line-hi);color:var(--text-2)}.markdown a{border-bottom:1px solid rgba(111,184,255,.35)}.reading-card{position:relative;display:flex;flex-direction:column;width:100%;min-width:0;min-height:0;flex:0 1 auto;max-height:calc(var(--caption-max-height) - var(--fs-small) * 1.5 - 6px - var(--caption-chrome-height, 0px));border:0;border-radius:0;background:transparent;box-shadow:none;overflow:hidden;text-align:left}.reading-scroll{flex:1 1 auto;min-width:0;min-height:0;overflow:auto;padding:2px 4px;line-height:1.6;font-size:var(--fs-read);color:var(--text-1);scroll-behavior:auto;overscroll-behavior:contain}.reading-scroll>.markdown{max-width:46em}.reading-scroll>*+*{margin-top:10px}.caption-live .reading-scroll{color:var(--glow-core);font-size:clamp(22px,1.7vw,30px);font-weight:500;line-height:1.5;text-shadow:0 2px 10px rgba(0,0,0,.85),0 0 16px rgba(191,230,255,.12)}.back-to-latest{position:absolute;bottom:14px;left:50%;z-index:2;display:inline-flex;align-items:center;gap:6px;margin-left:-64px;width:128px;justify-content:center;height:34px;border-radius:999px;background:#141c28e6;border:1px solid var(--line-hi);font-size:13px;color:var(--text-1);box-shadow:0 10px 30px #0006}.back-to-latest svg{width:15px;height:15px}.welcome-line{max-width:24em;color:var(--text-2)}.reply-pending{margin:0;color:var(--text-2);font-size:var(--fs-small)}.reply-error{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 14px}.caption .reply-error,.transcript .reply-error{justify-content:flex-start}.reply-error p{margin:0;color:var(--err);font-size:var(--fs-small)}.reply-stopped{margin:0;color:var(--text-3);font-size:var(--fs-small)}.reply-actions{display:flex;align-items:center;gap:4px;opacity:0;transition:opacity .25s var(--ease)}.caption:hover .reply-actions,.caption:focus-within .reply-actions,.reading-card .reply-actions,.transcript .reply-actions{opacity:1}@media(hover:none){.reply-actions{opacity:.72}}.reply-actions button{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:var(--text-3);transition:background .2s,color .2s,transform .2s var(--ease)}.reply-actions button:hover{background:var(--surface-hi);color:var(--text-1)}.reply-actions button:active{transform:scale(.9)}.reply-actions button[aria-pressed=true]{color:var(--accent);background:#6fb8ff1f}.reply-actions svg{width:17px;height:17px}.reply-actions-gap{width:10px}.caption-after{display:grid;gap:6px;flex:none;padding-top:6px}.suggestions{display:flex;flex-wrap:wrap;gap:6px}.suggestion{max-width:100%;white-space:normal;text-align:left;line-height:1.35;animation:suggestion-in .3s var(--ease) both}@keyframes suggestion-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.suggestion{animation:none}}.workflow-entry{display:inline-flex;align-items:center;gap:10px;padding:12px 16px;border-radius:16px;border:1px solid rgba(111,184,255,.3);background:#6fb8ff14;color:var(--text-1);font-size:var(--fs-small);transition:background .2s,transform .25s var(--ease)}.workflow-entry:hover{background:#6fb8ff24;transform:translateY(-2px)}.workflow-entry svg{width:17px;height:17px;color:var(--accent)}.receipt{display:grid;justify-items:center;gap:10px;width:min(560px,100%)}.caption .receipt,.transcript .receipt{justify-items:start}.receipt-head{font-size:var(--fs-small);color:var(--text-2)}.receipt-steps{display:flex;align-items:flex-start;margin:0;padding:0;list-style:none}.receipt-steps li{position:relative;display:grid;justify-items:center;gap:6px;width:104px;color:var(--text-3)}.receipt-node{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;border:1px solid var(--line-hi);background:#ffffff08;font-size:12px;font-variant-numeric:tabular-nums;transition:background .3s,border-color .3s,color .3s,box-shadow .3s}.receipt-node svg{width:14px;height:14px}.receipt-steps small{font-size:12px;white-space:nowrap}.receipt-link{position:absolute;top:13px;left:calc(50% + 17px);width:calc(100% - 34px);height:1px;background:var(--line-hi);overflow:hidden}.receipt-steps li.is-done .receipt-link:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,var(--glow),transparent);animation:flow 1.2s var(--ease) 1}@keyframes flow{0%{transform:translate(-100%)}to{transform:translate(100%)}}.receipt-steps li.is-done{color:var(--text-2)}.receipt-steps li.is-done .receipt-node{border-color:#bfe6ff80;color:var(--glow);background:#bfe6ff14}.receipt-steps li.is-done .receipt-link{background:#bfe6ff59}.receipt-steps li.is-active{color:var(--text-1)}.receipt-steps li.is-active .receipt-node{border-color:var(--glow);color:var(--glow);box-shadow:0 0 0 4px #bfe6ff14,0 0 16px #bfe6ff59;animation:breathe 1.6s ease-in-out infinite}@keyframes breathe{50%{box-shadow:0 0 0 7px #bfe6ff0a,0 0 22px #bfe6ff80}}.receipt-confirmed .receipt-node,.receipt-confirmed .receipt-steps li{color:var(--ok)!important}.receipt-confirmed .receipt-node{border-color:#7be0b599!important;background:#7be0b51a!important}.receipt-confirmed .receipt-link{background:#7be0b580!important}.receipt-steps li.is-warn,.receipt-steps li.is-warn .receipt-node{color:var(--warn);border-color:#ffc27a8c}.receipt-steps li.is-failed,.receipt-steps li.is-failed .receipt-node{color:var(--err);border-color:#ff8a8a8c}.receipt-text{margin:0;font-size:var(--fs-small);color:var(--text-2)}.receipt-confirmed .receipt-text{color:var(--ok)}.receipt-sent .receipt-text{color:var(--warn)}.receipt-failed .receipt-text{color:var(--err)}.card{display:grid;gap:10px;width:100%;padding:18px 20px;border-radius:20px;background:#ffffff09;border:1px solid var(--line);text-align:left;font-size:var(--fs-small);color:var(--text-2)}.caption .card{max-width:100%;padding:8px 0;gap:8px;border:0;border-radius:0;background:transparent}.caption .card-label{font-size:13px}.caption .receipt-steps{width:100%}.caption .receipt-steps li{flex:1;min-width:0;width:auto}.card p{margin:0;line-height:1.6}.card small{color:var(--text-3);font-size:12px}.card-label{display:flex;align-items:center;gap:8px;color:var(--text-1);font-weight:600;font-size:15px}.card-label svg{width:17px;height:17px;color:var(--glow)}.card-actions{display:flex;flex-wrap:wrap;gap:8px}.card-error{color:var(--err)!important}.weather-current{display:flex;align-items:center;gap:16px}.weather-current strong{font-size:46px;font-weight:200;line-height:1;color:var(--text-1);letter-spacing:-.03em}.weather-current sup{font-size:.45em;color:var(--text-3)}.weather-current span{display:grid;color:var(--text-1)}.weather-forecast{display:grid;grid-template-columns:repeat(auto-fit,minmax(76px,1fr));gap:8px}.weather-forecast div{display:grid;gap:2px;padding:10px;border-radius:14px;background:#ffffff08;font-size:12px;text-align:center}.weather-provider{justify-self:end}.caption .weather-current{gap:10px}.caption .weather-current strong{font-size:32px}.caption .weather-forecast{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.caption .weather-forecast div{padding:6px;background:transparent}.life-results{display:grid;gap:10px;width:100%}.recognition-card dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px 16px;margin:0}.recognition-card dt{font-size:12px;color:var(--text-3)}.recognition-card dd{margin:0;color:var(--text-1)}.notice-card{border-color:#ffc27a47;background:#ffc27a0d}.notice-card .card-label svg{color:var(--warn)}.location-card{border-color:#6fb8ff47}.manual-location{display:flex;gap:8px}.manual-location input{flex:1;min-width:0;height:38px;padding:0 14px;border-radius:999px;border:1px solid var(--line-hi);background:#00000040;color:var(--text-1);font-size:var(--fs-small)}.manual-location input::placeholder{color:var(--text-3)}.manual-location input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.media-result{display:flex;align-items:center;gap:10px;color:var(--text-1);text-decoration:none}.media-result svg{width:17px;height:17px;color:var(--glow)}.media-result span{flex:1}.sources{width:100%;font-size:var(--fs-small);color:var(--text-2);text-align:left}.caption .sources{max-width:100%;text-align:left}.sources summary{cursor:pointer;list-style:none;color:var(--text-3);display:inline-flex;align-items:center;gap:6px}.sources summary::-webkit-details-marker{display:none}.sources summary:before{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform .2s}.sources[open] summary:before{transform:rotate(45deg)}.sources>div{display:grid;gap:6px;margin-top:10px;text-align:left}.sources a,.sources span{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:12px;background:#ffffff08;color:var(--text-2)}.sources a svg{width:13px;height:13px}.dock{position:relative;display:grid;justify-items:center;gap:10px;width:min(760px,100%);min-width:0;max-width:100%}.composer{position:relative;display:flex;align-items:flex-end;gap:10px;width:100%;min-width:0;max-width:100%;min-height:56px;padding:6px 6px 6px 18px;border-radius:28px;transition:border-color .3s,box-shadow .4s var(--ease),background .3s}.composer.is-focused{border-color:#6fb8ff73;box-shadow:var(--inner-hi),0 0 0 4px #6fb8ff14,0 0 40px #6fb8ff2e,var(--shadow-deep)}.composer.is-recording{border-color:#bfe6ff66;padding-left:8px}.composer textarea{flex:1 1 0%;min-width:0;width:100%;min-height:42px;max-height:calc(var(--fs-input) * 1.55 * 6 + 16px);padding:8px 0;border:0;background:transparent;resize:none;font-size:var(--fs-input);line-height:1.55;color:var(--text-1);overflow-y:auto}.composer textarea::placeholder{color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.composer textarea:placeholder-shown{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.composer textarea:focus-visible{outline:none}.composer-tools{display:flex;align-items:center;gap:4px;height:42px;flex:none}.tool-button{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:50%;color:var(--text-2);transition:background .2s,color .2s,transform .2s var(--ease)}.tool-button:hover:not(:disabled){background:var(--surface-hi);color:var(--text-1)}.tool-button:active:not(:disabled){transform:scale(.92)}.tool-button:disabled{opacity:.35}.tool-button.is-on{color:var(--accent);background:#6fb8ff1f;box-shadow:0 0 18px #6fb8ff2e}.tool-button svg{width:20px;height:20px}.send-button{position:relative;display:grid;place-items:center;flex:none;width:42px;height:42px;margin-left:4px;border-radius:50%;background:#ffffff14;color:var(--text-3);transition:background .25s,color .25s,box-shadow .3s}.send-button svg{width:21px;height:21px;stroke-width:2.1}.send-button.is-ready{background:linear-gradient(180deg,#8ac6ff,var(--accent));color:var(--accent-ink);box-shadow:0 8px 24px #6fb8ff59,inset 0 1px #fff6}.send-button:disabled:not(.is-ready){opacity:.6}.send-button.is-stop{background:#ffffff1a;color:var(--text-1)}.send-button.is-stop svg{width:15px;height:15px;fill:currentColor}.send-orbit{position:absolute;inset:-3px;border-radius:50%;border:2px solid transparent;border-top-color:var(--glow);border-right-color:#bfe6ff59;animation:spin 1.4s linear infinite;filter:drop-shadow(0 0 4px var(--glow))}.recording-bar{flex:1;display:flex;align-items:center;gap:14px;min-width:0;min-height:48px}.recording-meter{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;height:36px;min-width:0}.recording-meter b{width:3px;height:100%;border-radius:3px;background:linear-gradient(var(--glow-core),var(--glow));box-shadow:0 0 8px #bfe6ff99;transform:scaleY(.12);transition:transform .08s linear}.recording-time{font-size:var(--fs-small);color:var(--text-2);font-variant-numeric:tabular-nums;white-space:nowrap}.recording-time.is-ending{color:var(--warn)}.pill-button{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 16px;border-radius:999px;border:1px solid var(--line-hi);color:var(--text-2);font-size:var(--fs-small);white-space:nowrap;transition:background .2s,color .2s}.pill-button:hover{background:var(--surface-hi);color:var(--text-1)}.pill-primary{border-color:#6fb8ff73;background:#6fb8ff24;color:#d6ebff}.pill-button svg{width:16px;height:16px}.transcribing{flex:1;display:flex;align-items:center;min-height:48px;font-size:var(--fs-input)}.shimmer{background:linear-gradient(90deg,var(--text-3) 0%,var(--glow-core) 50%,var(--text-3) 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmer 1.6s linear infinite}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.location-chip{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 6px 0 12px;border-radius:999px;background:#6fb8ff1a;border:1px solid rgba(111,184,255,.28);color:#cfe6ff;font-size:13px}.location-chip>svg{width:14px;height:14px;color:var(--accent)}.location-chip button{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;color:var(--text-2)}.location-chip button:hover{background:#ffffff1a}.location-chip button svg{width:13px;height:13px}.history-warning{margin:0;font-size:12px;color:var(--text-3)}.composer.is-voice{padding:8px 8px 8px 10px;min-height:76px;align-items:center}.voice-prompt{flex:1 1 auto;display:flex;align-items:center;gap:14px;min-width:0;padding:0 6px 0 0;text-align:left;color:var(--text-1)}.voice-orb{position:relative;display:grid;place-items:center;flex:none;width:56px;height:56px;border-radius:50%;background:radial-gradient(circle at 34% 28%,#d9f2ff,var(--accent) 62%,#3d86d6);color:var(--accent-ink);box-shadow:0 10px 28px #6fb8ff57,inset 0 1px #ffffff80;transition:transform .25s var(--ease),box-shadow .3s var(--ease)}.voice-orb svg{width:24px;height:24px;stroke-width:2.1}.voice-orb-ring{position:absolute;inset:-7px;border-radius:50%;border:1px solid rgba(111,184,255,.28);animation:orb-ripple 3.4s var(--ease) infinite}.voice-orb.is-waiting{opacity:.8}.voice-prompt:hover .voice-orb{transform:scale(1.04);box-shadow:0 14px 34px #6fb8ff73,inset 0 1px #ffffff80}.voice-prompt:active .voice-orb{transform:scale(.96)}.voice-prompt:disabled{cursor:default;opacity:.75}.voice-prompt-text{display:grid;gap:2px;min-width:0}.voice-prompt-text strong{font-size:var(--fs-input);font-weight:500;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voice-prompt-text small{color:var(--text-3);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes orb-ripple{0%{transform:scale(.94);opacity:.7}55%{opacity:.18}to{transform:scale(1.16);opacity:0}}@media(prefers-reduced-motion:reduce){.voice-orb-ring{animation:none;opacity:.32}}@media(max-width:767px){.composer.is-voice{min-height:68px}.voice-orb{width:48px;height:48px}.voice-prompt-text small{display:none}.voice-prompt-text strong{font-size:15px}}.overlay{position:fixed;inset:0;z-index:50;display:flex;background:#0204088c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.overlay-center{align-items:center;justify-content:center;padding:24px}.overlay-left{justify-content:flex-start}.overlay-right{justify-content:flex-end}.sheet{position:relative;display:flex;flex-direction:column;max-height:100%;background:#0e131cd1;border:1px solid var(--line-hi);box-shadow:var(--inner-hi),0 40px 120px #0009;-webkit-backdrop-filter:blur(28px) saturate(140%);backdrop-filter:blur(28px) saturate(140%);color:var(--text-1)}.sheet:focus-visible{outline:none}.sheet-center{width:min(560px,100%);max-height:min(820px,calc(100dvh - 48px));border-radius:28px}.sheet-left,.sheet-right{width:clamp(420px,28vw,640px);max-width:100vw;height:100%}.sheet-left{border-radius:0 28px 28px 0;border-left:0}.sheet-right{border-radius:28px 0 0 28px;border-right:0}.sheet-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:26px 24px 8px 28px}.sheet-header h2{margin:6px 0 0;font-size:22px;font-weight:600;letter-spacing:.01em}.sheet-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:10px 28px 28px;overscroll-behavior:contain}.sheet-copy,.sheet-toolbar p{margin:0 0 16px;font-size:var(--fs-small);color:var(--text-2);line-height:1.6}.sheet-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.device-list{display:grid;gap:10px}.device-row{border-radius:20px;box-shadow:var(--inner-hi);overflow:hidden;transition:border-color .25s,background .25s,box-shadow .3s}.device-row.is-current{border-color:#bfe6ff66;background:#bfe6ff0f;box-shadow:var(--inner-hi),0 0 0 1px #bfe6ff1a,0 0 30px #96d2ff1f}.device-row-main{display:flex;align-items:center;gap:14px;width:100%;padding:14px 16px;text-align:left;color:var(--text-1);transition:background .2s}button.device-row-main:hover{background:#ffffff0a}.device-row-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#ffffff0d;color:var(--glow);flex:none}.device-row-text{display:grid;flex:1;min-width:0;line-height:1.4}.device-row-text strong{font-weight:600;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.device-row-text small{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12px;color:var(--text-3)}.device-row-text small svg{width:13px;height:13px}.device-row-temp{font-size:24px;font-weight:300;font-variant-numeric:tabular-nums}.device-row-temp sup{font-size:12px;color:var(--text-3)}.device-row-check{color:var(--glow);width:20px;height:20px}.device-row-main>svg:last-child:not(.device-row-check){color:var(--text-3)}.device-row-extra{padding:0 16px 14px 74px}.device-row-extra .inline-note{margin:0}.account-card{display:flex;align-items:center;gap:14px;padding:16px;border-radius:20px;box-shadow:var(--inner-hi)}.account-card>svg{margin-left:auto;color:var(--ok);width:20px;height:20px}.account-card div{display:grid;line-height:1.35}.account-card small{color:var(--text-3);font-size:13px;font-variant-numeric:tabular-nums}.account-avatar{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#cfeaff,#4f8fd6 70%);color:#06131f;font-weight:700;font-size:18px;box-shadow:0 0 24px #6fb8ff4d}.menu-list{display:grid;gap:6px;margin:18px 0}.menu-item{display:flex;align-items:center;gap:14px;width:100%;padding:14px;border-radius:16px;text-align:left;transition:background .2s}.menu-item:hover{background:#ffffff0d}.menu-item>svg{width:20px;height:20px;color:var(--text-2)}.menu-item span{display:grid;flex:1;line-height:1.35;font-size:15px}.menu-item small{color:var(--text-3);font-size:12.5px}.switch{position:relative;width:42px;height:24px;border-radius:999px;background:#ffffff1f;transition:background .25s;flex:none}.switch:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #00000059;transition:transform .3s var(--ease)}.switch.is-on{background:var(--accent)}.switch.is-on:after{transform:translate(18px)}.menu-note{margin:0 0 18px;font-size:12.5px;color:var(--text-3);line-height:1.6}.transcript{display:grid;gap:14px;padding-bottom:8px}.bubble{display:grid;gap:10px;max-width:92%;font-size:var(--fs-read);line-height:1.65}.bubble p{margin:0}.bubble-user{justify-self:end;padding:10px 16px;border-radius:20px 20px 6px;background:#6fb8ff24;border:1px solid rgba(111,184,255,.22)}.bubble-assistant{justify-self:start;padding:14px 18px;border-radius:6px 20px 20px;background:#ffffff0a;border:1px solid var(--line)}.bubble-name{font-size:11px;letter-spacing:.14em;color:var(--text-3)}.bubble .reply-actions{margin-left:-8px}.tag{justify-self:start;padding:2px 10px;border-radius:999px;background:#ffffff14;font-size:12px;color:var(--text-2)}.workflow-current{display:grid;gap:8px;padding:18px;border-radius:20px;margin-bottom:16px;box-shadow:var(--inner-hi)}.workflow-current p{margin:0;font-size:var(--fs-read)}.workflow-current small{color:var(--text-3)}.option-list{display:grid;gap:8px}.option-button{padding:14px 18px;border-radius:16px;text-align:left;box-shadow:var(--inner-hi);transition:background .2s,transform .25s var(--ease)}.option-button:hover{background:var(--surface-hi);transform:translateY(-1px)}.field-label{display:block;margin:0 0 8px;font-size:13px;color:var(--text-2)}.field-input{width:100%;height:52px;padding:0 18px;margin-bottom:16px;border-radius:16px;border:1px solid var(--line-hi);background:#00000040;color:var(--text-1);font-size:var(--fs-input)}.field-input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.workflow-sheet form .primary-button{margin-top:4px}.device-add{margin-bottom:20px}.binding-prompt{margin-bottom:22px}.binding-sn-field{display:flex;align-items:center;gap:8px}.binding-sn-field input{flex:1;min-width:0}.binding-sn-field .icon-button{flex:none;width:48px;height:48px}.binding-sn-field .is-recording{color:var(--err);background:#ff64641f}.binding-sheet .field-label{display:block;margin:18px 0 8px}.binding-sheet .field-input{margin:0}.binding-sheet form>.primary-button{margin-top:24px}.binding-check{display:flex;align-items:center;gap:8px;color:var(--ok);font-size:var(--fs-small)}.binding-check svg{width:18px;height:18px}.binding-success{display:grid;justify-items:center;gap:14px;text-align:center;padding-top:16px}.binding-success>svg{width:52px;height:52px;color:var(--ok)}.binding-success h3,.binding-success p{margin:0}.call-layer{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:clamp(16px,2.4vh,28px);padding:0 24px calc(var(--dock-gap) + env(safe-area-inset-bottom));pointer-events:none}.call-layer>*{pointer-events:auto}.call-text{display:grid;justify-items:center;gap:8px;max-width:min(36em,92vw);text-align:center;max-height:min(44dvh,440px);overflow-y:auto;overscroll-behavior:contain;overflow-wrap:anywhere;scrollbar-width:thin}.call-phase{margin:0;font-size:var(--fs-read);letter-spacing:.08em;color:var(--text-2)}.call-user{margin:0;font-size:var(--fs-small);color:var(--text-3)}.call-reply{margin:0;font-size:var(--fs-caption);line-height:1.55;color:var(--text-1);max-height:4.8em;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.call-error{margin:0;color:var(--err);font-size:var(--fs-small)}.call-note{margin:0;color:var(--warn);font-size:var(--fs-small)}.call-location{max-width:460px}.call-controls{display:flex;align-items:center;gap:clamp(10px,1.6vw,24px);padding:12px;border-radius:999px}.call-button{display:grid;justify-items:center;gap:6px;min-width:96px;padding:12px 18px;border-radius:999px;color:var(--text-2);font-size:13px;transition:background .2s,color .2s,transform .2s var(--ease)}.call-button svg{width:22px;height:22px}.call-button:hover:not(:disabled){background:var(--surface-hi);color:var(--text-1)}.call-button:active:not(:disabled){transform:scale(.95)}.call-button:disabled{opacity:.35}.call-button.is-on{color:var(--warn);background:#ffc27a1f}.call-hangup{width:72px;height:72px;min-width:0;padding:0;place-content:center;border-radius:50%;background:linear-gradient(180deg,#ff8f8f,#e65c5c);color:#2a0505;box-shadow:0 12px 32px #e65c5c66,inset 0 1px #fff6}.call-hangup:hover:not(:disabled){background:linear-gradient(180deg,#ffa0a0,#ee6a6a);color:#2a0505}.call-hangup span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.app[data-face=call] .aura-pulse{animation:call-pulse .83s ease-in-out infinite alternate}@keyframes call-pulse{to{opacity:.6}}.login{position:fixed;inset:0;display:grid;grid-template-rows:minmax(0,1fr) auto;overflow-y:auto}.login-stage{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,460px);align-items:center;gap:clamp(24px,4vw,96px);width:min(1720px,100%);margin:0 auto;padding:clamp(24px,4vh,64px) clamp(20px,5vw,120px)}.login-face{width:100%;max-width:calc(var(--face-w) * .9);justify-self:center}.login-card{padding:clamp(28px,3.6vh,44px) clamp(24px,2.4vw,40px);border-radius:32px}.login-card h1{margin:10px 0 6px;font-size:clamp(28px,1.6vw + .4vh,40px);font-weight:600;letter-spacing:.01em}.login-sub{margin:0 0 26px;color:var(--text-2);font-size:var(--fs-small)}.field{display:block;margin-bottom:16px}.field-box{display:flex;align-items:center;gap:10px;height:56px;padding:0 8px 0 18px;border-radius:18px;border:1px solid var(--line-hi);background:#00000047;transition:border-color .25s,box-shadow .3s var(--ease)}.field-box:focus-within{border-color:#6fb8ff80;box-shadow:0 0 0 4px #6fb8ff1a}.field-box>svg{width:19px;height:19px;color:var(--text-3)}.field-box input{flex:1;min-width:0;height:100%;border:0;background:transparent;font-size:var(--fs-input);color:var(--text-1)}.field-box input::placeholder{color:var(--text-3)}.field-box input:focus-visible{outline:none}.login-card .primary-button{margin-top:10px}.login-help{margin:20px 0 0;color:var(--text-3);font-size:12.5px;line-height:1.7}.login-footer{position:relative;z-index:1;padding:0 24px 24px;text-align:center;font-size:12px;letter-spacing:.16em;color:var(--text-3)}.call-session{position:absolute;top:92px;display:flex;align-items:center;gap:16px;color:var(--text-3);font-size:12px;letter-spacing:.04em}.call-session>span{display:flex;align-items:center;gap:7px}.call-session time{font-variant-numeric:tabular-nums}.call-device-area{width:min(360px,100%)}.call-device{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;border-radius:20px;text-align:left}.call-device>svg{width:20px;height:20px;color:var(--accent);flex:none}.call-device>svg:last-child{margin-left:auto;width:16px;color:var(--text-3)}.call-device span{min-width:0;display:grid;gap:3px}.call-device strong{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.call-device small{font-size:11px;color:var(--text-3)}.call-hint,.call-footer{margin:0;font-size:12px;line-height:1.5;color:var(--text-3)}.call-footer{display:flex;align-items:center;gap:6px}.call-footer svg{width:13px;height:13px}.call-text .receipt{max-width:min(440px,88vw);text-align:left}.call-wave{--voice-energy: 0;display:flex;align-items:center;justify-content:center;gap:4px;height:26px;color:var(--accent)}.call-wave i{display:block;width:4px;height:calc(4px + var(--voice-energy) * var(--bar) * 22px);min-height:4px;border-radius:4px;background:currentColor;transition:height .1s ease-out}.call-wave.is-muted{color:var(--text-3)}.call-layer{gap:clamp(12px,1.8vh,20px)}.call-controls{gap:8px}.call-button{min-width:88px;min-height:56px}@media(max-width:767px){.call-layer{padding-left:16px;padding-right:16px;gap:12px}.call-session{top:78px}.call-button{min-width:76px;padding:10px 12px}.call-hangup{min-width:0;padding:0}.call-device{padding:10px 14px}.call-reply{font-size:16px;max-height:3.1em;-webkit-line-clamp:2}}@media(prefers-reduced-motion:reduce){.call-wave i{transition:none}}.call-control-status{display:flex;align-items:center;justify-content:center;gap:7px;max-width:min(440px,90vw);padding:8px 12px;border-radius:14px;font-size:13px;color:var(--accent);background:#6fb8ff0f}.call-control-status svg{width:16px;height:16px;flex:none}.call-control-status[data-state=confirmed]{color:var(--ok)}.call-control-status[data-state=failed],.call-control-status[data-state=sent]{color:var(--warn)}.call-target-link{min-height:36px;padding:6px 12px;color:var(--text-3);font-size:11px;border-radius:14px}.call-target-link:hover{color:var(--text-1);background:var(--surface)}.call-footer{max-width:min(460px,100%);text-align:center}.call-footer svg{flex:none}.call-task-target{margin:0;font-size:12px;color:var(--text-3)}.call-resume{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 18px;border-radius:22px;color:var(--text-1);background:var(--surface)}.call-resume svg{width:18px;height:18px}.call-layer .call-error,.call-layer .call-note{line-height:1.5}@media(max-height:640px){.call-layer{gap:6px;padding-top:70px}.call-layer .call-text{max-height:36dvh}.call-layer .call-footer{font-size:10px}}.call-remote{width:min(420px,calc(100vw - 32px));max-height:min(54dvh,530px);overflow-y:auto;overscroll-behavior:contain;border-radius:20px;padding:14px;font-size:13px}.call-remote header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.call-remote header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.call-remote header span{flex:none;color:var(--text-3)}.call-remote fieldset{margin:0;padding:0;border:0;display:grid;gap:8px;min-width:0}.call-remote-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.call-remote-row label{display:flex;flex:1;align-items:center;gap:8px}.call-remote select{min-width:82px;flex:1;max-width:180px;min-height:38px;padding:6px;border-radius:9px;color:var(--text-1);background:var(--surface);border:1px solid var(--line);font:inherit}.call-remote option{color:#e6edf5;background:#17202c}.call-remote-toggles{display:grid;gap:7px}.call-remote-toggles>div{display:flex;align-items:center;gap:8px}.call-remote-toggles span{flex:1}.call-remote .chip,.call-confirm .chip{min-height:40px}.call-remote :disabled{opacity:.5;cursor:not-allowed}.call-remote-connect p,.call-remote>p{margin:8px 0;line-height:1.5}.call-confirm{width:min(420px,100%);display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--surface);font-size:13px}.call-confirm p{margin:0}.call-confirm>div{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.call-remote{background:#0c131df7;box-shadow:0 18px 50px #00000052}.call-remote-toggles>div{min-height:38px}.call-remote-toggles .chip{min-width:44px;padding-inline:8px}.call-wake-status{position:absolute;z-index:4;top:max(76px,calc(env(safe-area-inset-top) + 66px));left:50%;transform:translate(-50%);width:max-content;max-width:calc(100vw - 32px);padding:7px 12px;border-radius:14px;background:#0c131de0;color:var(--text-2);font-size:12px;line-height:1.5;text-align:center}.call-wake-status button{margin-left:8px;min-height:36px;border:1px solid var(--line);border-radius:10px;padding:5px 9px;color:var(--text-1);background:var(--surface);font:inherit}.call-wake-greeting{position:fixed;top:max(78px,calc(env(safe-area-inset-top) + 68px));left:50%;transform:translate(-50%);max-width:calc(100vw - 32px);width:max-content;margin:0;padding:7px 12px;border-radius:14px;color:var(--text-2);background:#0c131deb;font-size:13px;line-height:1.6}@media(max-width:600px){.call-wake-status{top:max(70px,calc(env(safe-area-inset-top) + 60px));font-size:11px}}.call-input-hint{max-width:min(320px,90vw);margin:0;padding:6px 10px;border-radius:10px;color:var(--text-2);background:#0c131df0;font-size:12px;line-height:1.5;text-align:center}.call-wake-greeting{display:grid;justify-items:center;gap:4px;padding:11px 20px;border:1px solid rgba(111,184,255,.32);box-shadow:0 6px 24px #0003}.call-wake-greeting strong{color:var(--accent);font-size:20px;line-height:1.3;font-weight:600}.call-wake-greeting span{color:var(--text-2);font-size:12px}@media(max-height:640px){.call-wake-greeting{padding:8px 14px}.call-wake-greeting strong{font-size:17px}}.call-phase{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:24px;color:var(--text-1);font-size:calc(var(--fs-read) + 1px)}.call-phase svg{width:15px;height:15px;color:var(--accent)}.call-spin{animation:call-spin .9s linear infinite}@keyframes call-spin{to{transform:rotate(360deg)}}.call-echo{display:inline-flex;align-items:flex-start;gap:6px;max-width:min(520px,92vw);margin:0;padding:6px 12px;border-radius:12px;color:var(--text-2);background:#0c131ddb;font-size:14px;line-height:1.5}.call-echo svg{flex:none;width:14px;height:14px;margin-top:3px;color:var(--accent)}.call-steps{display:grid;gap:6px;margin:0;padding:8px 12px;border-radius:14px;list-style:none;background:#0c131de6;font-size:14px;text-align:left}.call-steps li{display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:8px;color:var(--text-1)}.call-steps li[data-state=pending]{color:var(--text-3)}.call-steps li[data-state=written]{color:var(--text-2)}.call-steps li[data-state=uncertain]{color:var(--warn)}.call-steps li[data-state=failed]{color:var(--err)}.call-steps li[data-state=confirmed] .call-step-state{color:var(--ok)}.call-step-icon{display:inline-flex}.call-step-icon svg{width:16px;height:16px}.call-steps li[data-state=confirmed] .call-step-icon{color:var(--ok)}.call-steps li[data-state=uncertain] .call-step-icon{color:var(--warn)}.call-steps li[data-state=failed] .call-step-icon{color:var(--err)}.call-step-state{font-size:12px;color:var(--text-3)}.call-countdown{margin:0;color:var(--text-3);font-size:12px}.call-trace-open{min-height:30px;padding:4px 10px;border-radius:12px;color:var(--text-3);background:#0c131dcc;font-size:11px}.call-trace{width:min(560px,94vw);max-height:min(40dvh,320px);display:grid;grid-template-rows:auto minmax(0,1fr);gap:6px;padding:10px;border-radius:14px;background:#060a10fc;box-shadow:0 16px 40px #00000080;font-size:12px;text-align:left;overflow:hidden}.call-trace header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.call-trace header strong{font-size:12px;font-weight:500;line-height:1.4;color:var(--text-2)}.call-trace header>div{flex:none;display:flex;gap:4px}.call-trace .chip{min-height:28px;padding:2px 8px;font-size:11px;white-space:nowrap}.call-trace ol{margin:0;padding:0;list-style:none;overflow-y:auto;overscroll-behavior:contain;display:grid;align-content:start;gap:3px}.call-trace li{display:grid;grid-template-columns:48px auto minmax(0,1fr);align-items:baseline;gap:6px;font-variant-numeric:tabular-nums;color:var(--text-2)}.call-trace li time{color:var(--text-3)}.call-trace li span{white-space:nowrap}.call-trace li em{color:var(--text-3);font-style:normal;overflow-wrap:anywhere}.call-trace li.is-empty{display:block;color:var(--text-3)}@media(max-height:640px){.call-trace{max-height:30dvh}.call-steps{font-size:13px;padding:6px 10px}}.call-missed{margin:0;padding:6px 10px;border-radius:10px;color:var(--warn);background:#ffc27a1a;font-size:12px;line-height:1.5}@media(min-width:1024px)and (min-height:640px){.app{--caption-max-height: 104px;--side-width: clamp(208px, 17vw, 260px);--side-inset: clamp(24px, 2.4vw, 48px)}.dock{width:min(760px,calc(100vw - var(--side-width) * 2 - var(--side-inset) * 2 - 32px))}.stage-face{--face-eye-l: 26%;--face-eye-r: 74%;width:min(164vw,calc(min(80dvh,94cqh) / .45));top:-32px}.stage-face .face-blush-l{left:18.5%}.stage-face .face-blush-r{left:66.5%}.app[data-face=call] .stage-face{width:min(164vw,calc(80cqh / .45))}.stage-caption{width:min(560px,calc(100vw - var(--side-width) * 2 - var(--side-inset) * 2 - 48px))}.caption-live .reading-card{max-height:var(--caption-max-height)}.caption-archive{--caption-max-height: min(220px, 28cqh);--caption-chrome-height: 24px;position:absolute;display:flex;left:calc(50% - 50vw + var(--side-inset));bottom:0;width:var(--side-width);height:var(--caption-max-height);padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.caption-archive .caption-heading{display:flex;align-items:center;flex:none;gap:7px;min-height:18px;color:var(--text-2);font-size:11px;letter-spacing:.08em}.caption-archive .caption-heading:before{content:"";width:4px;height:4px;border-radius:50%;background:var(--accent)}.caption-archive .reading-card{flex:1 1 0%;border:0;border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.caption-archive .reading-scroll{padding:0 2px;color:var(--text-1);font-size:15px}.caption-archive .caption-user{font-size:12px}.caption-archive .back-to-latest{bottom:4px;height:28px;font-size:12px}.device-chip{position:fixed;right:var(--side-inset);bottom:calc(var(--dock-gap) + env(safe-area-inset-bottom) + 104px);display:grid;grid-template-columns:36px minmax(0,1fr) 16px;gap:12px 10px;width:var(--side-width);height:auto;min-height:112px;padding:14px;border-radius:18px;background:#0e131cad;box-shadow:var(--inner-hi),0 12px 32px #00000029}.device-chip:before{content:"设备状态";grid-column:1 / 3;grid-row:1;color:var(--text-2);font-size:11px;letter-spacing:.08em}.device-chip-icon{grid-column:1;grid-row:2;width:36px;height:36px;border-radius:12px}.device-chip-text{grid-column:2 / -1;grid-row:2;gap:5px}.device-chip-text strong{font-size:14px}.device-chip-text small{font-size:11px}.device-chip-temp{grid-column:1 / -1;grid-row:3;display:flex;align-items:baseline;gap:2px;padding:12px 0 0;border-left:0;border-top:1px solid var(--line);font-size:28px;line-height:1}.device-chip-temp:after{content:"温度";align-self:center;margin-left:auto;color:var(--text-3);font-size:11px}.device-chip-caret{grid-column:3;grid-row:1;align-self:center}}@media(max-width:1279px){.sheet-left,.sheet-right{width:min(560px,100vw)}.login-stage{grid-template-columns:1fr;justify-items:center;gap:0;padding-top:2vh}.login-face{max-width:min(560px,80vw);margin-bottom:-6%}.login-card{width:min(460px,100%)}}@media(max-width:767px){:root{--fs-caption: clamp(17px, 4.6vw, 21px);--fs-read: 15.5px;--fs-small: 13px;--fs-input: 16px;--dock-gap: 12px}.topbar{padding:max(10px,env(safe-area-inset-top)) 12px 0}.ghost-button span{display:none}.ghost-button{width:44px;padding:0;justify-content:center;position:relative}.ghost-button small{position:absolute;top:4px;right:2px;min-width:16px;height:16px;font-size:10px}.device-chip{height:50px;max-width:calc(100vw - 120px);padding-right:12px}.device-chip-icon{width:36px;height:36px}.device-chip-temp{font-size:18px;padding-left:8px}.stage{padding:0 14px 14px}.stage-caption{width:min(340px,100%)}.stage-dock{padding:0 12px calc(var(--dock-gap) + env(safe-area-inset-bottom))}.composer{padding-left:14px;gap:8px}.composer-tools{gap:0}.tool-button{width:36px;height:40px}.send-button{width:40px;height:40px;margin-left:2px}.recording-bar{gap:8px}.recording-time{display:none}.receipt-steps li{width:86px}.sheet-left,.sheet-right{width:100vw;border-radius:0}.sheet-center{border-radius:24px}.overlay-center{padding:12px;align-items:flex-end}.sheet-header{padding:20px 18px 6px 20px}.sheet-body{padding:8px 20px calc(20px + env(safe-area-inset-bottom))}.call-controls{gap:4px}.call-button{min-width:76px;padding:10px 8px;font-size:12px}.call-hangup{width:64px;height:64px}.net-banner{width:92vw;margin-left:-46vw}.login-stage{padding:2vh 16px 16px}.login-face{max-width:78vw}.login-card{border-radius:26px}.app[data-keyboard=true]{--caption-max-height: min(88px, calc(var(--visible-height) * .2))}.app[data-keyboard=true] .stage{padding-bottom:12px}.app[data-keyboard=true] .caption-live .reading-scroll{font-size:18px}.app[data-keyboard=true] .composer textarea{max-height:min(calc(var(--fs-input) * 1.55 * 6 + 16px),calc(var(--visible-height) * .24))}}@media(max-width:360px){.composer{padding-left:12px;gap:6px}.tool-button{width:32px}.send-button{width:36px}}@media(max-height:639px)and (orientation:landscape){:root{--fs-caption: 17px;--fs-read: 14.5px;--dock-gap: 8px}.app{--caption-max-height: 84px}.topbar{padding-top:8px}.caption-live .reading-scroll{font-size:18px}.stage{padding-bottom:8px}.login-stage{grid-template-columns:40% minmax(320px,1fr);padding:12px 24px}.login-face{margin:0}}@media(max-width:1023px)and (min-height:640px){.app[data-face=reading]:not([data-keyboard=true]){--caption-max-height: min(36dvh, 280px)}.app[data-face=reading]:not([data-keyboard=true]) .caption-live .reading-scroll{font-size:17px;line-height:1.6}}@media(max-width:1023px){.stage-caption[data-suggestions="1"]{--caption-max-height: min(212px, 34dvh)}.app[data-face=reading] .stage-caption[data-suggestions="1"]{--caption-max-height: min(300px, 42dvh)}.app[data-keyboard=true] .stage-caption[data-suggestions="1"]{--caption-max-height: min(88px, calc(var(--visible-height) * .2))}}@media(max-height:639px)and (orientation:landscape){.stage-caption[data-suggestions="1"]{--caption-max-height: min(150px, 42dvh)}}:root{--bg-0: #080e12;--bg-1: #101a20;--surface-solid: #142028;--surface: rgba(190, 221, 224, .055);--surface-hi: rgba(190, 221, 224, .105);--line: rgba(190, 221, 224, .12);--line-hi: rgba(190, 221, 224, .2);--text-1: #f1f4ef;--text-2: #b2c3c5;--text-3: #82999e;--accent: #8be0cc;--accent-ink: #102d2a;--glow: #c6ece6;--ok: #8be0cc;--dock-gap: clamp(20px, 3.4vh, 40px)}.app,.login{background:radial-gradient(ellipse at 55% 40%,#18333766,transparent 58%),linear-gradient(145deg,#101c23,#080e12 75%)}.app:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(#b6d7d305 1px,transparent 1px),linear-gradient(90deg,#b6d7d305 1px,transparent 1px);background-size:84px 84px;mask-image:linear-gradient(transparent,#000 60%,transparent)}.aura-base{opacity:.5}.aura-grain{opacity:.025}.aura-motes{opacity:.32}.topbar{min-height:98px;padding:20px 36px 10px;gap:24px}.brand-lockup{display:flex;align-items:center;gap:11px;flex:none;color:var(--text-1)}.brand-symbol{width:42px;height:42px;display:grid;place-items:center;border:1px solid #8be0cc40;border-radius:14px;background:#8be0cc0a;color:var(--accent)}.brand-symbol svg{width:24px;height:24px}.brand-lockup>span:last-child{display:grid;gap:2px}.brand-lockup strong{font-size:16px;font-weight:550;letter-spacing:.05em}.brand-lockup strong span{color:var(--text-3)}.brand-lockup small{font-size:9px;color:var(--text-3);letter-spacing:.2em}.topbar-actions{gap:6px;margin-left:0}.topbar-actions .ghost-button{border:1px solid var(--line);background:#0c151b80}.device-chip{position:static;display:flex;grid-template-columns:none;gap:10px;width:auto;height:56px;min-height:0;max-width:min(340px,32vw);margin-left:auto;padding:6px 16px 6px 8px;border-radius:18px;background:#101c23b3;box-shadow:var(--inner-hi)}.device-chip:before,.device-chip-temp:after{content:none}.device-chip-icon{display:grid;width:36px;height:36px;border-radius:12px}.device-chip-text{display:grid;gap:1px}.device-chip-text strong{font-size:13px}.device-chip-text small{font-size:11px}.device-chip-temp{display:block;font-size:24px;line-height:1.3;padding:0 0 0 12px;border-top:0;border-left:1px solid var(--line)}.call-wake-status{top:auto;bottom:calc(var(--dock-gap) + 100px);left:auto;right:36px;transform:none;width:auto;max-width:260px;background:#122028b3;border:1px solid var(--line);color:var(--text-2);text-align:left;padding:10px 14px;border-radius:14px;font-size:12px}.call-wake-status:before{content:"";display:inline-block;width:6px;height:6px;margin-right:8px;border-radius:50%;background:var(--text-3)}.call-wake-status[data-state=listening]:before{background:var(--accent);box-shadow:0 0 12px #8be0cc60}.stage{padding:0 32px 18px}.stage-intro{position:absolute;z-index:2;left:clamp(36px,6vw,120px);top:21%;width:min(280px,24vw);pointer-events:auto}.intro-eyebrow{display:flex;align-items:center;gap:8px;color:var(--accent);font-size:11px;letter-spacing:.08em}.intro-eyebrow>span{width:18px;height:1px;background:var(--accent)}.stage-intro h1{margin:20px 0 18px;font-size:clamp(34px,3.4vw,56px);font-weight:450;line-height:1.3;letter-spacing:-.035em}.stage-intro h1>span{color:var(--accent)}.stage-intro>p{margin:0;color:var(--text-2);font-size:14px;line-height:1.9}.intro-suggestions{display:grid;gap:10px;margin-top:28px}.intro-suggestions button{display:flex;align-items:center;gap:10px;padding:12px 14px;min-height:46px;border:1px solid var(--line);border-radius:14px;color:var(--text-2);font-size:12px;background:#12202866;transition:background .2s,border-color .2s}.intro-suggestions button:hover{background:#8be0cc0e;border-color:#8be0cc55}.intro-suggestions svg{width:16px;height:16px;color:var(--accent)}.intro-suggestions svg:last-child{margin-left:auto;width:14px}.stage-intro>small{display:flex;align-items:center;gap:6px;margin-top:20px;font-size:10px;line-height:1.6;color:var(--text-3)}.stage-intro>small svg{width:12px;height:12px}.app[data-welcome=true]:not([data-face=call]) .stage-robot{margin-left:10%}.caption-welcome{padding:12px 20px}.welcome-line{display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;color:var(--text-2)}.welcome-line svg{width:17px;height:17px;color:var(--accent)}.stage-dock .dock{width:min(620px,100%)}.composer{border-radius:24px;background:#18262ee0;border-color:#b6d7d329;box-shadow:0 16px 60px #0004,inset 0 1px #ffffff0a}.composer.is-voice{padding:10px 14px;min-height:82px}.voice-orb{background:linear-gradient(145deg,#c3f2e5,#8be0cc);width:52px;height:52px;border-radius:18px;box-shadow:0 6px 24px #8be0cc20,inset 0 1px #ffffff80}.voice-orb-ring{border-radius:24px;border-color:#8be0cc35}.voice-prompt-text{gap:4px}.voice-prompt-text strong{font-weight:550;font-size:16px}.voice-prompt-text small{color:var(--text-2);font-size:11px}.primary-button,.send-button.is-ready{background:linear-gradient(160deg,#b5ecdc,var(--accent));box-shadow:0 8px 28px #8be0cc20}.composer.is-focused{border-color:#8be0cc70;box-shadow:0 0 0 3px #8be0cc0c,0 16px 60px #0004}.call-layer{padding-bottom:calc(22px + env(safe-area-inset-bottom));gap:12px}.call-text{width:min(540px,100%);max-width:100%;max-height:min(42dvh,390px);gap:8px;padding:16px 24px;border:1px solid var(--line);border-radius:26px;background:linear-gradient(145deg,#182830e8,#101b23ed);box-shadow:0 14px 60px #0003;backdrop-filter:blur(20px)}.call-eyebrow{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--text-3);letter-spacing:.12em}.call-eyebrow .dot{width:5px;height:5px}.call-wave{height:32px;gap:5px;margin:3px 0}.call-wave i{width:4px;background:var(--accent);height:calc(5px + var(--voice-energy) * var(--bar) * 26px);box-shadow:0 0 12px #8be0cc18}.call-phase{font-size:22px;font-weight:500;letter-spacing:.02em;line-height:1.4}.call-context{margin:0;font-size:12px;line-height:1.6;color:var(--text-2)}.call-layer[data-hearing=true] .call-text{border-color:transparent;box-shadow:none}.call-layer[data-hearing=true] .call-phase{color:var(--accent)}.call-issue{display:grid;gap:10px;padding:12px;border:1px solid #ffc27a40;border-radius:14px;background:#ffc27a0a;color:var(--warn);font-size:12px;line-height:1.7}.call-issue p{margin:0}.call-issue>div{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.call-layer[data-issue=true] .call-phase{color:var(--warn)}.call-layer[data-issue=true] .call-wave i{animation:none;background:var(--warn)}.call-layer[data-phase=thinking] .call-wave{color:var(--warm)}.call-layer[data-phase=thinking] .call-wave i{background:var(--warm);animation:voice-wait 1.2s ease-in-out infinite;animation-delay:calc(var(--bar) * -.8s)}.call-echo{background:#8be0cc09;border:1px solid #8be0cc1a;padding:8px 12px;font-size:13px}.call-input-options{display:grid;justify-items:center;gap:8px}.call-mode-switch{display:flex;padding:4px;gap:4px;border:1px solid var(--line);border-radius:16px;background:#0c171ee8}.call-mode-switch button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:40px;min-width:130px;padding:8px 16px;font-size:12px;border-radius:12px;color:var(--text-2);transition:background .2s,color .2s}.call-mode-switch button[aria-pressed=true]{color:var(--accent);background:#8be0cc15;box-shadow:inset 0 0 0 1px #8be0cc20}.call-mode-switch svg{width:16px;height:16px}.call-input-options>p{display:flex;align-items:center;gap:5px;margin:0;color:var(--text-3);font-size:10px}.call-input-options>p svg{width:12px;height:12px}.call-hold{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;width:270px;border-radius:16px;background:var(--accent);color:var(--accent-ink);font-size:14px;font-weight:550;user-select:none;-webkit-user-select:none;touch-action:none}.call-hold.is-holding{background:#c6f7e9;box-shadow:0 0 0 5px #8be0cc20}.call-hold:disabled{opacity:.4}.call-controls{padding:6px 8px;gap:6px;background:#16232ce8;box-shadow:0 12px 40px #0003}.call-button{min-width:84px;padding:10px 14px;font-size:11px;gap:5px}.call-button svg{width:20px;height:20px}.call-hangup{min-width:0;width:56px;height:56px;padding:0;box-shadow:0 6px 18px #e65c5c22}.call-wake-greeting{top:106px;background:#172b2aee;border-color:#8be0cc40}.call-countdown{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;color:var(--text-2);font-size:11px}.call-countdown button{color:var(--accent);padding:6px 10px;min-height:36px;border-radius:10px;background:#8be0cc0c}.call-steps{width:100%;padding:10px 12px;background:#080e1250;border:1px solid var(--line)}.receipt-summary{display:flex;align-items:center;gap:8px}.receipt-summary svg{flex:none;width:18px;height:18px}.login-card{background:linear-gradient(145deg,#1a2b33d9,#111d25f0);border-color:var(--line-hi);border-radius:28px}.login-card h1{font-size:clamp(26px,2vw,36px);font-weight:500;line-height:1.4;margin-top:18px}.login-sub{font-size:13px;line-height:1.8}.field-box{background:#080e1250;border-radius:14px}.field-box:focus-within{border-color:#8be0cc70;box-shadow:0 0 0 3px #8be0cc0d}@keyframes voice-wait{50%{opacity:.35;transform:scaleY(.5)}}@media(min-width:1600px){.stage-intro{top:25%}}@media(max-width:1100px){.stage-intro{left:32px;width:230px}.stage-intro h1{font-size:38px}.intro-suggestions{margin-top:20px}}@media(max-width:900px){.topbar{padding:16px 20px 8px;gap:12px}.brand-lockup strong{font-size:14px}.brand-lockup small{font-size:8px}.brand-symbol{width:36px;height:36px;border-radius:12px}.stage-intro{top:22px;left:24px;width:calc(100% - 48px)}.stage-intro h1{font-size:28px;margin:8px 0}.stage-intro h1 br{display:none}.stage-intro>p,.intro-suggestions,.stage-intro>small{display:none}.app[data-welcome=true]:not([data-face=call]) .stage-robot{margin-left:0}.call-wake-status{bottom:calc(var(--dock-gap) + 100px);right:20px;max-width:230px}}@media(max-width:600px){:root{--dock-gap: 16px}.topbar{min-height:80px;padding:max(12px,env(safe-area-inset-top)) 16px 8px;gap:10px}.brand-lockup{gap:8px}.brand-lockup strong{font-size:13px;letter-spacing:.025em}.brand-lockup strong span{display:inline}.brand-lockup small{display:none}.brand-symbol{width:32px;height:32px;border-radius:10px}.brand-symbol svg{width:19px;height:19px}.topbar-actions{gap:5px}.topbar-actions .ghost-button{width:36px;height:36px}.device-chip{height:42px;max-width:calc(100vw - 218px);padding:4px 8px;gap:5px;border-radius:13px}.device-chip-icon,.device-chip-temp,.device-chip-caret{display:none}.device-chip-text strong{font-size:11px}.device-chip-text small{font-size:9px;gap:4px}.device-chip-text .dot{width:4px;height:4px}.stage{padding:0 16px 12px}.stage-intro{top:12px;left:24px}.intro-eyebrow{font-size:10px}.stage-intro h1{font-size:27px}.stage-dock{padding-inline:16px}.composer.is-voice{min-height:72px;padding:8px 10px}.voice-orb{width:46px;height:46px;border-radius:16px}.voice-prompt{gap:12px}.voice-prompt-text strong{font-size:14px}.voice-prompt-text small{display:block;font-size:10px}.welcome-line{font-size:12px;gap:6px}.caption-welcome{padding:8px 0}.call-wake-status{left:50%;right:auto;transform:translate(-50%);bottom:calc(var(--dock-gap) + 92px);max-width:calc(100vw - 32px);width:max-content;padding:6px 10px;font-size:10px}.app[data-welcome=true] .stage-caption{margin-bottom:38px}.call-layer{padding-inline:16px;gap:10px;padding-bottom:calc(14px + env(safe-area-inset-bottom))}.call-text{padding:14px 16px;border-radius:22px;max-height:34dvh;gap:6px}.call-phase{font-size:20px}.call-context{font-size:11px}.call-wave{height:26px;margin:0}.call-wake-greeting{top:86px;padding:8px 16px}.call-wake-greeting strong{font-size:16px}.call-button{min-width:76px}.call-hangup{min-width:0;width:52px;height:52px}.call-input-options{gap:6px}.call-mode-switch button{min-height:38px;min-width:124px}.login-stage{padding-top:0}.login-face{max-width:64vw;margin-bottom:-10%}.hero-robot{max-height:32dvh}.login-card{padding:24px}.login-card h1{font-size:26px}.login-footer{padding-bottom:16px;font-size:10px}}@media(max-width:360px){.brand-lockup>span:last-child{display:none}.device-chip{max-width:calc(100vw - 156px)}}@media(max-height:640px){.stage-intro{top:10px}.stage-intro h1{font-size:28px;margin:8px 0}.intro-suggestions,.stage-intro>small{display:none}.call-context,.call-eyebrow,.call-input-options>p{display:none}.call-text{padding:8px 14px;gap:4px}.call-layer{gap:6px}.call-wave{height:20px}.call-phase{font-size:17px}.call-hold{min-height:44px}}@media(prefers-reduced-motion:reduce){.call-layer .call-wave i{animation:none;transition:none}.voice-orb-ring{animation:none}.call-spin{animation-duration:2s}}.app[data-face=call] .stage{width:100%;height:calc(100% - 210px);align-self:start;justify-self:stretch}.app[data-face=call]:has(.call-layer[data-input-mode=hold]) .stage{height:calc(100% - 275px)}.call-layer{inset:100px 0 0;min-height:0;justify-content:flex-end;gap:8px}.call-text{display:flex;flex-direction:column;align-items:center;flex:0 1 auto;min-height:0;max-height:135px;width:min(720px,100%);overflow:visible;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}.call-text>.caption{flex-shrink:0}.call-text>.call-content:empty{display:none}.call-layer[data-expanded=true] .call-text{max-height:min(55dvh,540px)}.call-layer[data-panel=true] .call-text{max-height:min(45dvh,400px)}.call-content{flex:1 1 auto;min-height:0;width:100%;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-gutter:stable;overflow-wrap:anywhere;text-align:left;display:flex;flex-direction:column;gap:14px;padding:4px 6px}.call-content>*{flex-shrink:0;max-width:100%}.call-content:focus-visible{outline:1px solid var(--accent);outline-offset:-1px;border-radius:10px}.call-answer{width:100%;max-width:100%;padding:0;background:none;border:0;gap:8px}.call-answer-label{display:none}.call-answer .markdown,.call-answer-receipt{font-size:clamp(16px,1.3vw,20px);line-height:1.7;white-space:normal}.call-answer .markdown>:first-child{margin-top:0}.call-answer .markdown>:last-child{margin-bottom:0}.call-answer .markdown+.markdown{margin-top:8px}.call-answer .markdown pre,.call-answer .markdown table{max-width:100%;overflow-x:auto}.call-answer .markdown table{display:block}.call-answer .markdown img{max-width:100%;height:auto}.call-answer-receipt{margin:12px 0 0;color:var(--accent)}.call-content .call-echo{align-self:flex-end;font-size:13px}.call-content .call-remote,.call-content .call-location{width:100%;max-height:none;overflow:visible}.call-content .call-issue{text-align:left}.call-content .call-issue>div{justify-content:flex-start}.call-reading-actions{display:flex;justify-content:center;gap:8px;flex:none}.call-reading-actions .chip{min-height:28px;padding:3px 10px;font-size:11px;background:transparent}.call-layer[data-answer=true] .call-wave,.call-layer[data-answer=true] .call-content .call-echo{display:none}.call-layer[data-answer=true] .call-phase{min-height:18px;font-size:12px;color:var(--text-3)}.call-wave{height:18px;margin:0}.call-phase{font-size:17px}.call-wake-greeting{position:static;transform:none;background:none;box-shadow:none;border:0;padding:0}.call-controls,.call-input-options,.call-resume,.call-phase,.call-context,.call-wave{flex-shrink:0}@media(min-width:901px){.call-input-options{display:flex;align-items:center;gap:10px}.call-input-options>p{display:none}.call-layer[data-expanded=true] .call-text{width:min(840px,100%)}}@media(max-width:900px){.call-layer{top:80px}.call-text{padding:10px 14px;gap:5px;max-height:160px}.call-layer[data-input-mode=hold] .call-text{max-height:145px}.call-layer[data-expanded=true] .call-text{max-height:43dvh}.call-answer .markdown,.call-answer-receipt{font-size:15px;line-height:1.7}}@media(max-height:640px)and (min-width:901px){.call-layer{top:90px;padding-top:0}.call-text{padding:10px 14px}.call-wave{display:none}}@media(max-height:640px)and (max-width:900px){.call-layer{top:80px;padding-top:0;gap:6px}.call-wave{display:none}.call-text{padding:8px 12px}}@media(max-height:640px)and (orientation:landscape){.app[data-face=call] .stage,.app[data-face=call]:has(.call-layer[data-input-mode=hold]) .stage{width:64%;height:100%}.call-layer{left:60%}.call-layer{top:84px;right:12px;bottom:0;padding:0 10px 8px;gap:5px}.call-wave,.call-input-options>p{display:none}.call-input-options{gap:4px}.call-mode-switch{padding:2px}.call-mode-switch button{min-height:30px;padding:4px 12px}.call-hold{min-height:36px}.call-controls{padding:3px 6px}.call-button{min-height:40px;padding:4px 12px;gap:2px}.call-hangup{width:40px;height:40px;padding:0}.call-text{padding:8px 12px}.call-phase{font-size:16px}.call-text,.call-layer[data-input-mode=hold] .call-text{max-height:92px;width:min(620px,100%)}.call-layer[data-expanded=true] .call-text,.call-layer[data-panel=true] .call-text{max-height:160px}.call-layer[data-answer=true] .call-phase{display:none}.call-content{padding:0 4px;gap:8px}.call-answer{padding:0}.call-answer .markdown,.call-answer-receipt{font-size:14px}}.call-layer .call-text{width:min(840px,calc(100vw - 48px));max-height:min(52dvh,540px);gap:8px}.call-layer[data-panel=true] .call-text{max-height:min(61dvh,620px)}.call-layer .call-phase,.call-layer[data-answer=true] .call-phase{display:inline-flex;font-size:clamp(19px,1.65vw,26px);line-height:1.4;min-height:32px;color:var(--accent);font-weight:600}.call-turn-hint{color:var(--text-2);font-size:13px;margin:0;text-align:center}.call-heard{width:100%;margin:0;padding:10px 18px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--text-1);font-size:clamp(17px,1.45vw,22px);text-align:center;overflow-wrap:anywhere;max-height:90px;overflow-y:auto}.call-heard span{color:var(--text-2);margin-right:14px;font-size:12px;white-space:nowrap}.call-confirmation,.call-control-result{width:100%;padding:16px 20px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:0 10px 40px #0002}.call-confirmation{border-color:color-mix(in srgb,var(--accent) 45%,transparent)}.call-confirmation>div:first-child{display:flex;gap:10px;align-items:center}.call-confirmation>div:first-child>span{margin-left:auto;font-size:12px;color:var(--text-2)}.call-confirmation svg,.call-control-result>svg{width:20px;height:20px;color:var(--accent);flex-shrink:0}.call-confirmation p,.call-control-result p{margin:8px 0;color:var(--text-2);font-size:14px;line-height:1.5}.call-command-values{display:block;font-size:clamp(21px,1.9vw,28px);line-height:1.45;color:var(--text-1)}.call-confirmation .card-actions{margin-top:12px}.call-control-result{display:flex;gap:14px}.call-control-result strong{font-size:19px}.call-control-result small{color:var(--text-2);line-height:1.5}.call-control-result[data-state=confirmed]{border-color:var(--accent)}.call-control-result[data-state=failed],.call-control-result[data-state=sent]{border-color:var(--warn)}.call-microphone{display:flex;align-items:center;justify-content:center;gap:7px;max-width:260px;font-size:12px;color:var(--text-2);background:transparent;border:0;padding:6px 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.call-microphone svg{width:15px;height:15px;flex-shrink:0}.call-layer .call-content{flex:1 1 auto}.call-layer .call-text>.caption{position:static;inset:auto;width:100%;height:auto;flex:0 1 auto;min-height:0;max-height:34dvh;--caption-max-height: 34dvh;--caption-chrome-height: 0px}.call-layer .caption .reading-card{flex:0 1 auto;max-height:inherit}.call-layer .caption .reading-scroll{font-size:clamp(20px,1.7vw,30px);line-height:1.65;padding:4px 12px}.call-layer .call-text:has(.call-control-result)>.caption{max-height:22dvh;--caption-max-height: 22dvh}.call-layer .call-text:has(.call-control-result) .call-content,.call-layer .call-text:has(.call-confirmation) .call-content{flex:0 0 auto}@media(min-width:901px){.app[data-face=call] .stage,.app[data-face=call]:has(.call-confirmation) .stage,.app[data-face=call]:has(.call-layer[data-input-mode=hold]) .stage{width:46%;height:100%;justify-self:start;align-self:stretch;padding:0 0 12px 2vw}.call-layer{left:46%;right:clamp(24px,3.5vw,72px);top:92px;bottom:0;justify-content:center;padding:0 0 clamp(20px,3vh,40px);gap:clamp(10px,1.6vh,20px)}.call-layer .call-text{width:100%;max-height:min(64dvh,700px);gap:12px}.call-layer[data-panel=true] .call-text{max-height:min(70dvh,760px)}.call-layer .call-phase,.call-layer[data-answer=true] .call-phase{font-size:clamp(26px,2.5vw,46px);min-height:0;line-height:1.25}.call-turn-hint{font-size:clamp(13px,1vw,18px)}.call-heard{font-size:clamp(22px,2vw,36px);padding:14px 22px;max-height:140px}.call-heard span{font-size:clamp(13px,1vw,17px)}.call-confirmation,.call-control-result{padding:clamp(16px,2vh,26px) clamp(20px,1.8vw,32px)}.call-confirmation p,.call-control-result p{font-size:clamp(15px,1.1vw,20px)}.call-command-values{font-size:clamp(30px,2.8vw,52px)}.call-control-result strong{font-size:clamp(22px,1.8vw,32px)}.call-layer .call-answer .markdown,.call-layer .call-answer-receipt{font-size:clamp(20px,1.7vw,30px)}.call-input-options{flex-wrap:wrap;justify-content:center}.call-microphone{font-size:clamp(12px,.9vw,15px)}}@media(max-width:900px){.call-layer .call-text{width:calc(100vw - 28px);max-height:49dvh}.call-layer[data-panel=true] .call-text{max-height:58dvh}.call-microphone{max-width:220px}.call-heard{padding:8px 12px}}
