.chat{--fc-bubble:#1c1c21;--fc-hairline:#ffffff12;--fc-bubble-r:18px;--fc-bubble-tail:6px;--fc-card-top:#ffffff08;--fc-card-bottom:#ffffff02;--fc-box-r:18px;--fc-orb:48px;--fc-danger-glow:color-mix(in srgb, var(--danger) 67%, transparent);--fc-avatar:44px;--fc-link-h:36px}.fc-dialog{--orb-x:0;--orb-e:.7;--orb-c:160 150 255;max-width:none;max-height:none;color:var(--ink-100);background:0 0;border:0;margin:0;padding:0;overflow:hidden}.fc-dialog:modal{overscroll-behavior:contain}.fc-dialog::backdrop{background:color-mix(in srgb, var(--bg-000) 70%, transparent);overscroll-behavior:contain;overflow:hidden}.fc-dialog[data-layout=sheet]{inset:var(--fc-vt,0) 0 auto;width:100%;height:var(--fc-vh,100dvh)}.fc-dialog[data-layout=drawer]{width:min(440px,100%);height:100dvh;inset:0 0 0 auto}.fc-panel{border-radius:0;height:100%}.fc-panel:before{border-radius:0;inset:0}.fc-dialog[data-layout=drawer] .fc-panel{border-left:1px solid var(--line-100)}.fc-panel .chat__head{padding-top:var(--space-2)}.orb.fc-orb{--orb-size:var(--fc-orb);isolation:isolate;margin-bottom:var(--space-2);position:relative;top:auto;left:auto;transform:none}.fc-panel .fc-hbtn{top:calc(var(--space-2) + (var(--fc-orb) - var(--hit-target)) / 2);margin-block:0;bottom:auto}.chat:is([data-status=thinking],[data-status=speaking],[data-status=sending],[data-status=sent]) .chat__status i{background:rgb(var(--orb-c));box-shadow:0 0 10px rgb(var(--orb-c))}.chat[data-status=error] .chat__status i{background:var(--danger);box-shadow:0 0 8px var(--fc-danger-glow)}.chat .fc-thread{gap:var(--space-4);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line-200) transparent;overflow-y:auto}[data-hero] .chat:not([data-state=greeting]) .fc-thread{height:calc(var(--chat-thread) + var(--space-4));margin-top:calc(-1 * var(--space-4));padding-top:var(--space-4);--fc-fade:var(--space-4);mask-image:linear-gradient(transparent, #000 var(--fc-fade))}.fc-panel .fc-thread{min-height:0;margin-top:calc(-1 * var(--space-4));padding-top:var(--space-8);--fc-fade:var(--space-6);mask-image:linear-gradient(transparent, #000 var(--fc-fade));flex:1}.fc-panel .chat__reply{max-width:none}.fc-turn{gap:var(--space-4);flex-direction:column;display:flex}.fc-faia{max-width:60ch;font:400 17px/1.6 var(--font-sans);color:var(--ink-100);margin:0}.chat:not([data-state=greeting]) .fc-greeting{font-size:17px;line-height:1.6}.fc-user{max-width:min(78%,52ch);padding:10px var(--space-4);border:1px solid var(--fc-hairline);border-radius:var(--fc-bubble-r) var(--fc-bubble-r) var(--fc-bubble-tail) var(--fc-bubble-r);background:var(--fc-bubble);font:400 16px/1.5 var(--font-sans);color:var(--ink-100);overflow-wrap:anywhere;align-self:flex-end;margin:0}.fc-rest{color:#0000}.fc-caret{vertical-align:-.15em;background:var(--signal);width:2px;height:1.05em;margin-left:3px;display:inline-block}.fc-think{align-items:center;gap:7px;height:28px;display:flex}.fc-think i{background:rgb(var(--orb-c));width:6px;height:6px;box-shadow:0 0 10px rgb(var(--orb-c) / .9);border-radius:50%}.fc-think span{font:400 12px/1 var(--font-mono);color:var(--ink-200);margin-left:6px}.fc-errdot{background:var(--danger);width:7px;height:7px;box-shadow:0 0 10px var(--danger);vertical-align:.1em;border-radius:50%;margin-right:10px;display:inline-block}.fc-replies{gap:var(--space-2);padding:0 var(--space-2);flex-wrap:wrap;display:flex}.fc-replies--in{padding:var(--space-3) 0 0}.fc-alert .fc-faia{max-width:none}.fc-card{margin:var(--space-1) 0;padding:calc(var(--space-4) + var(--space-1));border:1px solid var(--fc-hairline);border-radius:var(--radius-lg);background:linear-gradient(180deg, var(--fc-card-top), var(--fc-card-bottom));flex-direction:column;gap:14px;display:flex;position:relative}.fc-card:before{content:"";top:-1px;right:var(--space-6);left:var(--space-6);background:linear-gradient(90deg, transparent, rgb(var(--orb-c) / .8), transparent);pointer-events:none;height:1px;position:absolute}.fc-card:after{content:"";border-radius:inherit;background:radial-gradient(55% 90px at 50% 0%, rgb(var(--orb-c) / .09), transparent);pointer-events:none;position:absolute;inset:0}.fc-card>*{z-index:1;position:relative}.fc-card__h{font:500 15px/1.3 var(--font-sans);color:var(--ink-100);align-items:center;gap:10px;margin:0;display:flex}.fc-card__h i{background:rgb(var(--orb-c));width:6px;height:6px;box-shadow:0 0 10px rgb(var(--orb-c));border-radius:50%}.fc-card__rows{flex-direction:column;gap:14px;margin:0;display:flex}.fc-card__row{flex-direction:column;gap:6px;display:flex}.fc-card__row+.fc-card__row{border-top:1px solid var(--fc-hairline);padding-top:14px}.fc-card__k{font:500 11px/1.2 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-200);margin:0}.fc-card__v{font:400 15px/1.55 var(--font-sans);color:var(--ink-100);margin:0}.fc-opts{margin:var(--space-1) 0 0;flex-direction:column;gap:14px;padding:0;list-style:none;display:flex}.fc-opt{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.fc-opt+.fc-opt{border-top:1px solid var(--fc-hairline);padding-top:14px}.fc-opt__n,.fc-goal__k{font:400 12px/1.4 var(--font-mono);color:var(--ink-200);margin:0}.fc-opt__t{color:var(--ink-100);overflow-wrap:anywhere}.fc-opt__x{overflow-wrap:anywhere;margin:0}.fc-opt .fc-svc{margin-top:var(--space-1)}.fc-goal{gap:var(--space-1);margin-top:var(--space-3);flex-direction:column;display:flex}.fc-goal__x{overflow-wrap:anywhere}.fc-links{gap:var(--space-2);flex-wrap:wrap;margin:0;display:flex}.fc-link{height:auto;min-height:var(--fc-link-h);max-width:100%;padding:var(--space-2) var(--space-4);text-align:left;white-space:normal;font-size:14px;line-height:1.3;text-decoration:none;position:relative}.fc-link:before{content:"";inset:calc(-1 * (var(--space-1) + 1px)) 0;position:absolute}.fc-svc{gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.fc-svc__a{align-items:center;gap:var(--space-2);color:var(--ink-100);text-decoration:none;display:inline-flex}.fc-svc__a i{background:var(--k);width:6px;height:6px;box-shadow:0 0 8px var(--k);border-radius:50%}.fc-svc__a:hover{border-color:var(--k);color:var(--ink-100)}.fc-contact{container-type:inline-size}.fc-fields{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.fc-field--wide{grid-column:1/-1}.fc-contact .field{gap:6px}.fc-pref .fc-card__k{margin-bottom:6px}.fc-contact .fc-card__k span{text-transform:none;letter-spacing:0}.fc-contact .input:focus-visible{border-color:rgb(var(--orb-c) / .7);box-shadow:0 0 18px rgb(var(--orb-c) / .18);outline:0}.fc-contact .input[aria-invalid=true]{border-color:var(--danger)}@container (width<440px){.fc-fields{grid-template-columns:minmax(0,1fr)}}.fc-pref__row{gap:var(--space-2);flex-wrap:wrap;display:flex}.fc-pref__opt{display:inline-flex;position:relative}.fc-pref__opt input{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:0;position:absolute;overflow:hidden}.fc-pref__opt .chip{align-items:center;display:inline-flex}.fc-pref__opt input:checked+.chip{border-color:rgb(var(--orb-c) / .7);box-shadow:0 0 0 1px rgb(var(--orb-c) / .25), 0 0 18px rgb(var(--orb-c) / .18);color:var(--ink-100)}.fc-pref__opt input:focus-visible+.chip{outline:2px solid var(--focus);outline-offset:2px}.fc-consent{min-height:var(--hit-target);font:400 14px/1.5 var(--font-sans);color:var(--ink-200);cursor:pointer}.fc-consent input{flex:none;width:16px;height:16px}.fc-consent input:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.fc-consent a{color:var(--ink-100);text-underline-offset:2px}.fc-err{font:400 14px/1.4 var(--font-sans);color:var(--ink-100);margin:0}.fc-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.fc-actions .btn-primary[aria-disabled=true]{opacity:var(--opacity-disabled);cursor:progress}.fc-sum{min-width:0;font:400 13px/1.5 var(--font-sans);color:var(--ink-200);flex:220px}.fc-sum summary{height:var(--hit-target);font:400 12px/1 var(--font-mono);color:var(--ink-200);cursor:pointer;align-items:center;gap:6px;list-style:none;display:inline-flex}.fc-sum summary::-webkit-details-marker{display:none}.fc-sum summary:after{content:"+"}.fc-sum[open] summary:after{content:"−"}.fc-sum summary:hover{color:var(--ink-100)}.fc-sum summary:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.fc-sum ul{gap:var(--space-1);margin:0 0 var(--space-1);padding:var(--space-3) var(--space-4);border:1px dashed var(--line-200);border-radius:var(--radius-md);flex-direction:column;list-style:none;display:flex}.fc-done{font:400 14px/1.4 var(--font-sans);color:var(--ink-200);overflow-wrap:anywhere;align-items:center;gap:10px;margin:0;display:flex}.fc-done svg{fill:none;width:16px;height:16px;stroke:rgb(var(--orb-c));stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 6px rgb(var(--orb-c) / .8));flex:none}.fc-sent__t:focus{outline:0}.fc-sent__top{align-items:flex-start;gap:14px;display:flex}.fc-av{width:var(--fc-avatar);height:var(--fc-avatar);border:1px solid var(--line-200);background:var(--bg-200);box-shadow:0 0 0 3px var(--bg-000), 0 0 0 4px rgb(var(--orb-c) / .55), 0 0 22px rgb(var(--orb-c) / .3);font:600 14px/1 var(--font-sans);color:var(--ink-100);border-radius:50%;flex:none;place-items:center;display:grid}.fc-av picture{display:contents}.fc-av img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.fc-sent__t{margin:0 0 var(--space-1);font:500 17px/1.3 var(--font-sans);color:var(--ink-100)}.fc-cap{margin:calc(-1 * var(--space-1)) 0 0;font:400 12px/1.4 var(--font-mono);color:var(--ink-200)}.fc-again{justify-content:center;margin:0;display:flex}.fc-again svg{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round}.fc-again .btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.fc-hbtn{top:0;bottom:var(--space-4);z-index:2;height:var(--hit-target);padding:0 var(--space-3);border-radius:var(--radius-pill);color:var(--ink-200);font:400 12px/1 var(--font-mono);cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:6px;margin-block:auto;display:inline-flex;position:absolute}.fc-hbtn:hover{border-color:var(--line-200);color:var(--ink-100)}.fc-hbtn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.fc-hbtn svg{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.fc-restart{left:0}.fc-min{width:var(--hit-target);justify-content:center;padding:0;left:0}.fc-panel .fc-restart{left:auto;right:0}.fc-panel .fc-restart[data-confirm] span{width:min-content;line-height:1.25}.fc-box{gap:var(--space-1);padding:var(--space-1) var(--space-3) var(--space-3) var(--space-4);border:1px solid var(--line-200);border-radius:var(--fc-box-r);background:var(--bg-000);flex-direction:column;display:flex}.fc-box:focus-within{border-color:var(--signal-line);box-shadow:var(--glow-signal)}.fc-box textarea{width:100%;min-height:var(--hit-target);resize:none;color:var(--ink-100);font:400 16px/22px var(--font-sans);background:0 0;border:0;outline:0;padding:11px 0;display:block;overflow-y:auto}.fc-box textarea:placeholder-shown{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.fc-box textarea::placeholder{color:var(--ink-300);font-family:var(--font-mono);text-overflow:ellipsis;font-size:14px}.fc-box__bar{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.fc-box__kbd{font:400 12px/1 var(--font-mono);color:var(--ink-300)}.fc-box__kbd kbd{border:1px solid var(--line-200);border-radius:var(--radius-sm);color:var(--ink-200);font:inherit;padding:2px 5px}.fc-box button{width:var(--hit-target);height:var(--hit-target);border-radius:var(--radius-md);background:var(--primary);color:var(--primary-ink);cursor:pointer;border:0;flex:none;place-items:center;margin-left:auto;display:grid}.fc-box button:hover{background:var(--primary-strong)}.fc-box button svg{width:20px;height:20px}.fc-box button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}@supports selector(:has(a)){.fc-box:has(>textarea:focus-visible){outline:2px solid var(--focus);outline-offset:2px}}.fc-composer[hidden]{display:none}.fc-composer button[disabled]{opacity:var(--opacity-disabled);cursor:default}.fc-composer button[disabled]:hover{background:var(--primary)}.fc-foot{text-align:center;margin:0}.fc-ts:not([data-challenge]):has(>.fc-ts__w:empty){display:none}.fc-ts[data-challenge]{align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--fc-hairline);border-radius:var(--radius-lg);flex-direction:column;display:flex}.fc-ts__t{color:var(--ink-200);text-align:center;margin:0}.fc-ts__w{max-width:100%}@media (width<=720px){.fc-faia,.chat:not([data-state=greeting]) .fc-greeting{font-size:16px}.fc-user{max-width:86%;font-size:15px}.fc-card{padding:var(--space-4)}.fc-box__kbd{display:none}.fc-box{align-items:flex-end;gap:var(--space-2);padding:var(--space-1) var(--space-1) var(--space-1) var(--space-4);flex-direction:row}.fc-box__bar{flex:none}.fc-panel .fc-restart:not([data-confirm]) span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (prefers-reduced-motion:no-preference){.fc-msg.is-new{animation:fc-in .55s var(--ease-out-expo) both}.fc-msg.is-new.fc-in-place{animation-name:fc-in-place}.fc-caret{animation:1s steps(2,jump-none) infinite blink}.fc-think i{animation:1.2s ease-in-out infinite fc-dot}.fc-think i:nth-child(2){animation-delay:.15s}.fc-think i:nth-child(3){animation-delay:.3s}.chat:is([data-status=thinking],[data-status=speaking],[data-status=sending]) .chat__status i{animation:1.1s ease-in-out infinite fc-pulse}.chat:is([data-status=sent],[data-status=error]) .chat__status i{animation:none}.fc-dialog[open]{transition:opacity var(--duration-quick) var(--ease-out-expo), transform var(--duration-quick) var(--ease-out-expo)}.fc-dialog[open]::backdrop{transition:opacity var(--duration-quick) var(--ease-out-expo)}@starting-style{.fc-dialog[open]{opacity:0;transform:translateY(var(--space-6))}.fc-dialog[data-layout=drawer][open]{transform:translateX(var(--space-6))}.fc-dialog[open]::backdrop{opacity:0}}@keyframes fc-in{0%{opacity:0;filter:blur(8px);transform:translateY(12px)}}@keyframes fc-in-place{0%{opacity:0;filter:blur(8px)}}@keyframes fc-dot{0%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}@keyframes fc-pulse{0%,to{opacity:.35}50%{opacity:1}}}
