:root{color-scheme:dark;font-family:Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:400;color:#d8dee9;background:#000;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{margin:0;width:100%;min-height:100%;height:auto;background:#000}html{overflow-x:hidden;overflow-y:scroll}body,#root,.oled-app{overflow:visible}body{min-height:100dvh;min-height:100svh;overscroll-behavior-y:none}button{font:inherit;cursor:pointer}.oled-app{position:relative;width:100%;min-height:100dvh;min-height:100svh;overflow:visible;background:transparent}.oled-canvas{position:fixed;inset:0;z-index:0;width:100%;height:100%;height:100dvh;pointer-events:none}.oled-canvas canvas{display:block;width:100%;height:100%}.oled-frost{position:fixed;inset:0;z-index:11;width:100%;height:100%;pointer-events:none}.face-menu{position:fixed;top:1rem;right:1rem;z-index:14;display:flex;flex-direction:column;align-items:flex-end;gap:.45rem}.face-menu-bar{display:flex;align-items:center;gap:.4rem}.locale-toggle{display:flex;padding:.16rem;border:1px solid rgba(186,214,255,.16);border-radius:999px;background:#0a0e1647;-webkit-backdrop-filter:blur(16px) saturate(1.35);backdrop-filter:blur(16px) saturate(1.35);box-shadow:inset 0 1px #ffffff1a}.locale-toggle button{border:0;border-radius:999px;background:transparent;color:#dce6ff80;padding:.34rem .55rem;font-size:.68rem;letter-spacing:.1em}.locale-toggle button.is-active{background:#5f8cff3d;color:#eef3ff}.face-menu-trigger{display:flex;align-items:center;justify-content:center;gap:.22rem;width:2.35rem;height:2.35rem;border:1px solid rgba(186,214,255,.16);border-radius:999px;background:#0a0e1647;color:#dce6ffb8;-webkit-backdrop-filter:blur(16px) saturate(1.35);backdrop-filter:blur(16px) saturate(1.35);box-shadow:inset 0 1px #ffffff1f;transition:background .16s ease,border-color .16s ease}.face-menu-trigger i{width:.22rem;height:.22rem;border-radius:999px;background:currentColor}.face-menu.is-open .face-menu-trigger,.face-menu-trigger:hover{background:#5f8cff29;border-color:#bad6ff52}.face-menu-panel{display:flex;flex-direction:column;min-width:10.5rem;padding:.32rem;border:1px solid rgba(186,214,255,.18);border-radius:1rem;background:#0a0e1675;-webkit-backdrop-filter:blur(22px) saturate(1.45);backdrop-filter:blur(22px) saturate(1.45);box-shadow:inset 0 1px #ffffff1f,0 16px 40px #00000052}.face-menu-panel button{border:0;border-radius:.7rem;background:transparent;color:#dbe7ff;text-align:left;padding:.52rem .7rem;font-size:.88rem}.face-menu-panel button:hover,.face-menu-panel button.is-active{background:#5f8cff2e}.oled-stats[hidden]{display:none}.oled-stats{position:fixed;left:4.4rem;top:1rem;z-index:10;transition:left .36s cubic-bezier(.22,1,.36,1);margin:0;padding:.65rem .8rem;border-radius:.75rem;border:1px solid rgba(95,140,255,.28);background:#080a10b8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#c8d4ee;font-family:ui-monospace,Consolas,monospace;font-size:.72rem;line-height:1.45;pointer-events:none;white-space:pre}.oled-stats[data-fps=good]{color:#9be7b3}.oled-stats[data-fps=ok]{color:#e7d59b}.oled-stats[data-fps=poor]{color:#ff9b9b}.oled-error{margin:0;padding:1rem;color:#ff8a8a;font-family:ui-monospace,Consolas,monospace;font-size:.85rem;white-space:pre-wrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.face-chat{position:relative;z-index:12;display:flex;flex-direction:column;gap:.7rem;width:min(34rem,calc(100vw - 2rem));min-height:100dvh;min-height:100svh;margin-inline:auto;padding:calc(.75rem + env(safe-area-inset-top)) 0 calc(1.1rem + env(safe-area-inset-bottom));pointer-events:none}.face-chat-thread{display:flex;flex-direction:column;flex:1 1 auto;gap:.55rem;min-height:12rem;overflow:visible;padding:.35rem .55rem .15rem .2rem;pointer-events:auto;scrollbar-width:thin;scrollbar-color:rgba(210,224,255,.16) transparent;transition:opacity .42s ease,filter .42s ease}.face-chat-thread::-webkit-scrollbar{width:4px}.face-chat-thread::-webkit-scrollbar-track{margin:.8rem 0;background:transparent}.face-chat-thread::-webkit-scrollbar-thumb{border:0;border-radius:999px;background:#d2e0ff29;box-shadow:none}.face-chat-thread::-webkit-scrollbar-thumb:hover{background:#d2e0ff47}.face-chat-thread::-webkit-scrollbar-corner{background:transparent}.face-chat-thread:before{content:"";flex:1 1 auto}.face-chat-row{position:relative;top:0;display:flex;flex-direction:column;width:fit-content;max-width:86%;transition:top .28s cubic-bezier(.22,1,.36,1)}@media(hover:hover){.face-chat-row:hover{top:-2px}}.face-chat-row.is-user{align-self:flex-end;align-items:flex-end}.face-chat-row.is-assistant{align-self:flex-start;align-items:flex-start}.face-chat-bubble{--glow-x: 50%;--glow-y: 28%;--glow-i: 0;position:relative;z-index:0;width:fit-content;max-width:100%;margin:0;padding:.72rem .95rem;border-radius:1.15rem;border:1px solid rgba(186,214,255,.16);background:#080c146b;box-shadow:inset 0 1px #ffffff24,0 10px 28px #00000047;-webkit-backdrop-filter:blur(16px) saturate(1.35);backdrop-filter:blur(16px) saturate(1.35);color:#e7eefc;font-size:.92rem;line-height:1.45;transition:border-color .24s ease,box-shadow .28s cubic-bezier(.22,1,.36,1)}.face-chat-bubble:before{content:"";position:absolute;inset:0;z-index:0;border-radius:inherit;pointer-events:none;opacity:var(--glow-i);background:radial-gradient(160px 110px at var(--glow-x) var(--glow-y),rgba(255,255,255,.18),rgba(186,214,255,.06) 38%,transparent 72%),linear-gradient(180deg,rgba(255,255,255,.1) 0%,rgba(255,255,255,.02) 34%,transparent 58%);transition:opacity .28s ease}.face-chat-bubble>*{position:relative;z-index:1}.face-chat-row:hover .face-chat-bubble{border-color:#d2e4ff47;box-shadow:inset 0 1px #ffffff3d,0 14px 32px #0000004d}.face-chat-bubble.is-user{border-color:#78a8ff57;background:#2a4e9661}.face-chat-bubble.is-assistant{background:#0a101c33;-webkit-backdrop-filter:blur(22px) saturate(1.5);backdrop-filter:blur(22px) saturate(1.5)}@supports (-webkit-touch-callout: none){.face-chat-bubble{background:#080c147a}.face-chat-bubble.is-assistant{background:#0a101c5c}.face-chat-bubble.is-user{background:#2a4e9680}.face-chat-dock{background:linear-gradient(180deg,#ffffff1a,#ffffff08 36%,#080c146b),#0a0e1680}}.face-chat-bubble>:first-child{margin-top:0}.face-chat-bubble>:last-child{margin-bottom:0}.face-chat-bubble p,.face-chat-bubble ul,.face-chat-bubble ol,.face-chat-bubble pre,.face-chat-bubble blockquote,.face-chat-bubble table{margin:.45rem 0}.face-chat-bubble h1,.face-chat-bubble h2,.face-chat-bubble h3,.face-chat-bubble h4{margin:.7rem 0 .35rem;font-size:1em;font-weight:650;letter-spacing:.01em}.face-chat-bubble ul,.face-chat-bubble ol{padding-left:1.15rem}.face-chat-bubble li+li{margin-top:.2rem}.face-chat-bubble a{color:#c9dbff;text-decoration:underline;text-decoration-color:#bad6ff59}.face-chat-bubble code{padding:.08em .34em;border-radius:.35rem;background:#0a101c8c;font-family:ui-monospace,Consolas,monospace;font-size:.84em}.face-chat-bubble pre{overflow:auto;padding:.7rem .8rem;border-radius:.75rem;border:1px solid rgba(186,214,255,.12);background:#060a128c;scrollbar-width:thin}.face-chat-bubble pre code{padding:0;background:transparent}.face-chat-bubble blockquote{padding:.1rem 0 .1rem .7rem;border-left:2px solid rgba(170,200,255,.38);color:#e2eaffc7}.face-chat-bubble table{border-collapse:collapse;font-size:.86em}.face-chat-bubble th,.face-chat-bubble td{padding:.28rem .5rem;border:1px solid rgba(186,214,255,.16)}.face-chat-copy{position:absolute;top:.32rem;right:.32rem;z-index:2;display:grid;place-items:center;width:1.7rem;height:1.7rem;padding:0;border:1px solid rgba(186,214,255,.16);border-radius:.55rem;background:#080c146b;color:#dce6ffdb;box-shadow:0 6px 16px #00000047;opacity:0;transform:translateY(-.16rem);pointer-events:none;transition:opacity .22s ease,transform .22s ease,background .16s ease,border-color .16s ease}.face-chat-copy svg{width:.88rem;height:.88rem}.face-chat-row:hover .face-chat-copy,.face-chat-row:focus-within .face-chat-copy,.face-chat-copy:focus-visible{opacity:1;transform:none;pointer-events:auto}.face-chat-copy:hover,.face-chat-copy.is-copied{background:#5f8cff33;border-color:#bad6ff4d;color:#eef3ff}@media(hover:none){.face-chat-copy{opacity:0;transform:translateY(-.16rem);pointer-events:none}.face-chat-row.is-armed .face-chat-copy,.face-chat-row:focus-within .face-chat-copy{opacity:1;transform:none;pointer-events:auto}}.face-chat-bubble.is-streaming>:last-child:not(ul):not(ol):after,.face-chat-bubble.is-streaming>ul:last-child>li:last-child:after,.face-chat-bubble.is-streaming>ol:last-child>li:last-child:after{content:"";display:inline-block;width:.145em;height:.92em;margin-left:.16em;vertical-align:-.1em;border-radius:1px;background:#e8f1ff;box-shadow:0 0 10px #a4c6ffb8;animation:vect-caret .78s ease-in-out infinite}@keyframes vect-caret{0%,38%{opacity:1}55%,to{opacity:.12}}.face-chat-bubble.is-thinking{min-width:3.6rem;padding:.82rem .95rem}.face-chat-dots{display:flex;align-items:center;gap:.34rem;height:.85rem}.face-chat-dots i{display:block;width:.38rem;height:.38rem;border-radius:999px;background:#dbe7ff;box-shadow:0 0 10px #8cb4ff73;animation:vect-dot 1.05s ease-in-out infinite}.face-chat-dots i:nth-child(2){animation-delay:.14s}.face-chat-dots i:nth-child(3){animation-delay:.28s}@keyframes vect-dot{0%,70%,to{transform:translateY(.12rem) scale(.82);opacity:.32}35%{transform:translateY(-.28rem) scale(1);opacity:1}}.face-chat-dock-wrap{position:sticky;bottom:0;z-index:16;margin-top:auto;display:flex;flex-direction:column;align-items:center;gap:.48rem;padding-bottom:.15rem;pointer-events:none}.face-chat-dock{--reveal: 0;--voice: 0;position:relative;width:100%;overflow:hidden;isolation:isolate;pointer-events:auto;touch-action:pan-y;padding:.42rem;border-radius:1.7rem;border:1px solid rgba(186,214,255,.22);background:linear-gradient(180deg,#ffffff14,#ffffff05 36%,#080c1447),#0a0e165c;box-shadow:inset 0 1px #ffffff2e,inset 0 -1px #08102059,0 18px 50px #00000061,0 0 40px #5082ff14;-webkit-backdrop-filter:blur(26px) saturate(1.55);backdrop-filter:blur(26px) saturate(1.55);transition:border-color .18s ease,box-shadow .18s ease}.face-chat-dock:focus-within{border-color:#aacdff66;box-shadow:inset 0 1px #ffffff38,inset 0 -1px #08102059,0 18px 50px #00000061,0 0 48px #5f8cff29}.face-chat-dock.is-dragging{-webkit-user-select:none;user-select:none}.face-chat-dock.is-voice{overflow:visible;border-color:rgba(170,210,255,calc(.28 + var(--voice) * .35));box-shadow:inset 0 1px #ffffff38,inset 0 -1px #08102059,0 18px 50px #00000061,0 0 56px rgba(90,140,255,calc(.12 + var(--voice) * .38))}.face-chat.is-listening .face-chat-thread{opacity:.38;filter:blur(1.5px);transition:opacity .42s ease,filter .42s ease}.face-rail,.face-rail-fab,.face-rail-scrim{pointer-events:auto}.face-rail{position:fixed;top:0;left:0;bottom:0;z-index:13;width:3.55rem;overflow:hidden;border-right:1px solid rgba(186,214,255,.12);background:#080c146b;box-shadow:inset -1px 0 #ffffff0d,12px 0 40px #0000002e;-webkit-backdrop-filter:blur(28px) saturate(1.5);backdrop-filter:blur(28px) saturate(1.5);transition:width .36s cubic-bezier(.22,1,.36,1)}.face-rail.is-open{width:16.75rem}.face-rail-inner{display:flex;flex-direction:column;width:16.75rem;height:100%;padding:.85rem .55rem 1rem}.face-rail-brand{display:flex;align-items:center;gap:.7rem;min-height:2.4rem;margin-bottom:.85rem;padding:0 .35rem;color:#eef3ff}.face-rail-brand img{display:block;width:1.7rem;height:1.7rem;flex:0 0 1.7rem;object-fit:contain}.face-rail-brand span{overflow:hidden;font-size:.98rem;font-weight:650;letter-spacing:.14em;opacity:0;transition:opacity .22s ease}.face-rail.is-open .face-rail-brand span{opacity:1;transition-delay:70ms}.face-rail-top{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem;margin-bottom:1.05rem}.face-rail-toggle,.face-rail-fab{display:grid;place-items:center;flex:0 0 2.4rem;width:2.4rem;height:2.4rem;border:1px solid rgba(186,214,255,.16);border-radius:.85rem;background:#0a0e1647;color:#dce6ffc7;box-shadow:inset 0 1px #ffffff1a;transition:background .16s ease,border-color .16s ease,color .16s ease}.face-rail-toggle:hover,.face-rail-fab:hover,.face-rail.is-open .face-rail-toggle{background:#5f8cff29;border-color:#bad6ff52;color:#eef3ff}.face-rail-toggle svg,.face-rail-fab svg,.face-rail-new svg{width:1.15rem;height:1.15rem}.face-rail-new{display:flex;align-items:center;gap:.65rem;min-width:0;width:100%;height:2.4rem;padding:0 .7rem 0 .55rem;border:1px solid rgba(186,214,255,.14);border-radius:.85rem;background:#0a0e1638;color:#e7eefc;font-size:.88rem;white-space:nowrap;opacity:0;pointer-events:none;transition:background .16s ease,border-color .16s ease,opacity .22s ease}.face-rail.is-open .face-rail-new{opacity:1;pointer-events:auto;transition-delay:70ms}.face-rail-new:hover:not(:disabled){background:#5f8cff2e;border-color:#bad6ff4d}.face-rail-new:disabled,.face-rail-item:disabled{opacity:.45;cursor:default}.face-rail-chats{display:flex;flex-direction:column;min-height:0;flex:1;opacity:0;transform:translate(-.45rem);pointer-events:none;transition:opacity .22s ease,transform .32s cubic-bezier(.22,1,.36,1)}.face-rail.is-open .face-rail-chats{opacity:1;transform:none;pointer-events:auto;transition-delay:70ms}.face-rail-heading{margin:0 .45rem .4rem;color:#bacef075;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}.face-rail-empty{margin:.2rem .45rem;color:#c6d4f061;font-size:.82rem}.face-rail-chats ul{margin:0;padding:0;list-style:none;overflow:auto;min-height:0;scrollbar-width:thin;scrollbar-color:rgba(210,224,255,.14) transparent}.face-rail-item{width:100%;margin-bottom:.18rem;padding:.58rem .7rem;border:0;border-radius:.8rem;background:transparent;color:#e2eaffc7;text-align:left;font-size:.86rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background .16s ease,color .16s ease}.face-rail-item:hover:not(:disabled){background:#5f8cff1f;color:#eef3ff}.face-rail-item.is-active{background:#5f8cff33;color:#f4f7ff}.face-rail-fab{position:fixed;top:1rem;left:1rem;z-index:14;display:none}.face-rail-fab.is-hidden{opacity:0;pointer-events:none}.face-rail-scrim{position:fixed;inset:0;z-index:12;display:none;border:0;background:#03060c6b;opacity:0;pointer-events:none;outline:none;-webkit-tap-highlight-color:transparent;transition:opacity .22s ease}.face-rail-scrim:active,.face-rail-scrim:focus{background:#03060c6b}html.is-rail-open .oled-stats{left:17.75rem}.face-chat-credit{margin:0;pointer-events:auto;color:#bacef06b;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}.face-chat-credit a{color:#d2e2ff94;text-decoration:none}.face-chat-credit a:hover{color:#e6eeffd1}.face-chat-composer{display:flex;align-items:center;gap:.45rem}.face-chat-composer input{flex:1;min-width:0;border:0;background:transparent;color:#f2f6ff;padding:.78rem .95rem;outline:none}.face-chat-composer input::placeholder{color:#c6d4f07a}.face-chat-composer button{display:grid;place-items:center;width:2.55rem;height:2.55rem;border:1px solid rgba(150,190,255,.28);border-radius:999px;color:#eaf1ff;transition:background .16s ease,border-color .16s ease,transform .16s ease,opacity .16s ease,box-shadow .2s ease}.face-chat-composer button svg{width:1.05rem;height:1.05rem}.face-chat-send{background:#5f8cff38}.face-chat-mic{background:#0a0e1647;border-color:#96beff33}.face-chat-composer .face-chat-send:hover:not(:disabled),.face-chat-composer .face-chat-mic:hover:not(:disabled){background:#5f8cff61;border-color:#aacdff80;transform:translateY(-1px)}.face-chat-mic.is-live{background:#5f8cff6b;border-color:#b4d6ff8c;box-shadow:0 0 22px rgba(90,140,255,calc(.18 + var(--voice) * .5))}.face-chat-composer button:disabled{opacity:.42;cursor:default}.face-chat-composer input{opacity:calc(1 - var(--reveal) * .88)}.face-chat-dock.is-voice .face-chat-composer input{pointer-events:none;opacity:1}.face-chat-mic-error{margin:0;color:#ffb0b0c7;font-size:.72rem;letter-spacing:.04em}.voice-origin{--reveal: 0;--voice: 0;--b0: 0;--b1: 0;--b2: 0;--b3: 0;--b4: 0;position:absolute;left:50%;top:50%;z-index:4;width:0;height:0;pointer-events:none}.voice-orb{position:absolute;left:0;top:0;display:grid;place-items:center;width:6.1rem;height:6.1rem;padding:0;border:1px solid rgba(186,214,255,.28);border-radius:999px;color:#eef3ff;background:radial-gradient(circle at 50% 34%,#fff3,#5f8cff1f 42%,#080c146b 76%),#0a0e1661;box-shadow:inset 0 1px #ffffff3d,0 18px 48px #0000006b,0 0 42px rgba(80,130,255,calc(.12 + var(--voice) * .42));-webkit-backdrop-filter:blur(22px) saturate(1.55);backdrop-filter:blur(22px) saturate(1.55);opacity:calc(var(--reveal) * 1.05);transform:translate3d(-50%,calc(-50% - var(--reveal) * 8.4rem),0) scale(calc(.16 + var(--reveal) * .84));filter:blur(calc((1 - var(--reveal)) * 10px));pointer-events:none;transition:transform .54s cubic-bezier(.22,1,.36,1),opacity .28s ease,filter .28s ease,box-shadow .16s ease}.voice-origin.is-live .voice-orb{pointer-events:auto}.face-chat-dock.is-dragging .voice-orb{transition:none}.voice-ring{position:absolute;inset:-.35rem;border:1px solid rgba(170,210,255,.22);border-radius:inherit;opacity:calc(.22 + var(--voice) * .45);transform:scale(calc(1 + var(--voice) * .18));pointer-events:none}.voice-ring:nth-child(2){inset:-.85rem;opacity:calc(.12 + var(--voice) * .28);transform:scale(calc(1 + var(--voice) * .32))}.voice-ring:nth-child(3){inset:-1.4rem;opacity:calc(.06 + var(--voice) * .16);transform:scale(calc(1 + var(--voice) * .48))}.voice-origin.is-live .voice-ring{animation:voice-sonar 2.4s ease-out infinite}.voice-origin.is-live .voice-ring:nth-child(2){animation-delay:.35s}.voice-origin.is-live .voice-ring:nth-child(3){animation-delay:.7s}.voice-core{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:.28rem}.voice-core svg{width:1.45rem;height:1.45rem}.voice-bars{display:flex;align-items:flex-end;gap:.16rem;height:.95rem}.voice-bars i{display:block;width:.16rem;border-radius:999px;background:#d2e4ffdb;box-shadow:0 0 10px #6ea0ff73}.voice-bars i:nth-child(1){height:calc(.18rem + var(--b0) * .78rem)}.voice-bars i:nth-child(2){height:calc(.18rem + var(--b1) * .78rem)}.voice-bars i:nth-child(3){height:calc(.22rem + var(--b2) * .86rem)}.voice-bars i:nth-child(4){height:calc(.18rem + var(--b3) * .78rem)}.voice-bars i:nth-child(5){height:calc(.18rem + var(--b4) * .78rem)}@keyframes voice-sonar{0%{transform:scale(1);opacity:.42}to{transform:scale(1.55);opacity:0}}@media(max-width:720px){.face-rail{width:0;border-right-width:0;box-shadow:none}.face-rail.is-open{width:min(18rem,86vw);border-right-width:1px;box-shadow:inset -1px 0 #ffffff0d,18px 0 50px #00000061}.face-rail-fab{display:grid}.face-rail-scrim{display:block}.face-rail-scrim.is-on{opacity:1;pointer-events:auto}.oled-stats,html.is-rail-open .oled-stats{left:4.2rem;top:1rem}}@media(hover:none)and (max-width:720px),(pointer:coarse)and (max-width:720px){html,body,#root,.oled-app{height:100%;max-height:100dvh;overflow:hidden}.face-chat{height:100dvh;height:100svh;min-height:0;overflow:hidden}.face-chat-thread{min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}.face-chat-dock-wrap{position:relative;bottom:auto}}@media(max-width:640px){.face-menu{top:.75rem;right:.75rem}.oled-stats,html.is-rail-open .oled-stats{left:4rem;top:.75rem}.face-rail-fab{top:.75rem;left:.75rem}.face-chat{width:min(34rem,calc(100vw - 1.4rem));padding-bottom:calc(.9rem + env(safe-area-inset-bottom))}}@media(prefers-reduced-motion:reduce){.face-rail,.face-rail-chats,.face-rail-scrim,.oled-stats,.face-chat-copy,.face-chat-row,.face-chat-bubble{transition:none}.face-chat-row:hover{top:0}.face-chat-bubble:before,.voice-ring{display:none}.voice-orb,.face-chat.is-listening .face-chat-thread{transition:none}}
