:root{--night: #190d39;--apricot: #f6c98b;--apricot-deep: #eeb468;--font: "Parkinsans", system-ui, sans-serif;--radius-panel: 28px;--page: #f5f3ee;--panel: #ffffff;--line: rgb(42 37 102 / .1);--text: #2a2566;--text-soft: #4a4570;--hover: #f0ede5;--chip-active: #e8e4f4;--bubble-fibo: #f1eef8;--bubble-user: #2a2566;--bubble-user-text: #ffffff;--cta: #2a2566;--cta-hover: #3f3a82;--error-text: #a8322b;--focus: #2a2566;--stage-bg: linear-gradient(180deg, #7fb8e6 0%, #b3d9f2 48%, #e9eef0 78%, #f8e8cd 100%);--stage-text: #2a2566;--stage-text-soft: #3f3a6e;--stage-ghost: rgb(42 37 102 / .4);--stage-ghost-hover: rgb(255 255 255 / .45);--stage-toggle-hover: rgb(255 255 255 / .7);--stage-focus: #2a2566;--stage-error: #8f2620;--owl: #2a2566;--heart-dormant: #7f78a8;--heart-listen: #e9a94b;--heart-speak: #1f4fb8;--heart-error: #d9534f;font-family:var(--font);font-size:16px;line-height:1.5;letter-spacing:-.1px;color:var(--text);color-scheme:light}:root[data-theme=dark]{--page: #110a26;--panel: #1a1238;--line: #2c2358;--text: #f1eefb;--text-soft: #aba3d8;--hover: #231a4b;--chip-active: #2a2058;--bubble-fibo: #261d52;--bubble-user: #4b3ca0;--bubble-user-text: #ffffff;--cta: #3d318a;--cta-hover: #4b3ca0;--error-text: #ff9c8f;--focus: #f6c98b;--stage-bg: radial-gradient(120% 80% at 50% 38%, #44388a 0%, #352a6e 45%, #190d39 100%);--stage-text: #f7f5fb;--stage-text-soft: rgb(223 219 240 / .82);--stage-ghost: rgb(247 245 251 / .45);--stage-ghost-hover: rgb(247 245 251 / .1);--stage-toggle-hover: rgb(247 245 251 / .45);--stage-focus: #f6c98b;--stage-error: #ffa396;--owl: #f7f5fb;--heart-dormant: #6e6597;--heart-listen: #f6c98b;--heart-speak: #3a6fe0;--heart-error: #ffa396;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--page)}[hidden]{display:none!important}h1,h2{font-weight:500;margin:0;letter-spacing:-.02em}button{font:inherit;color:inherit;cursor:pointer;border:1px solid var(--line);background:var(--panel);border-radius:999px;padding:8px 18px;transition:background-color .16s ease,border-color .16s ease,color .16s ease}button:hover:not(:disabled){border-color:var(--text-soft)}button:disabled{cursor:default;opacity:.45}button:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.primary{font-weight:500;font-size:1.125rem;padding:14px 40px;border:none;background:var(--apricot);color:var(--night)}.primary:hover:not(:disabled){background:var(--apricot-deep)}.toy,.screen{--focus: var(--stage-focus);color:var(--stage-text);background:var(--stage-bg)}.screen{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:20px;padding:24px;text-align:center}.screen h1{font-size:clamp(2rem,5vw,3rem);line-height:1.1}.screen p{max-width:38ch;margin:0 0 8px;color:var(--stage-text-soft)}.layout{display:grid;grid-template-columns:248px minmax(0,1fr) minmax(300px,380px);height:100vh}.history{display:flex;flex-direction:column;gap:8px;padding:28px 16px 20px 20px;overflow-y:auto}.brand{display:block;width:132px;height:auto;margin:0 0 20px 4px}[data-theme=dark] .brand-on-light,[data-theme=light] .brand-on-dark{display:none}.new-conversation{display:flex;align-items:center;gap:10px;border:none;background:var(--cta);color:#fff;font-weight:500;padding:12px 18px}.new-conversation span{font-size:1.25rem;line-height:1}.new-conversation:hover:not(:disabled){background:var(--cta-hover)}.history h2{font-size:.9375rem;color:var(--text-soft);padding:20px 8px 4px}.history ul{list-style:none;margin:0;padding:0;flex:1;display:flex;flex-direction:column;gap:2px}.history li button{width:100%;text-align:left;border:none;border-radius:14px;background:none;padding:9px 12px;font-size:.9375rem;color:var(--text);font-variant-numeric:tabular-nums}.history li button:hover:not(:disabled){background:var(--hover)}.history li button[aria-current=true]{background:var(--chip-active);font-weight:500;box-shadow:inset 3px 0 0 var(--apricot-deep)}.history-error{margin:0;padding:0 8px;color:var(--error-text);font-size:.9375rem}.logout{align-self:flex-start;background:none;color:var(--text-soft)}.toy{position:relative;isolation:isolate;overflow:hidden;margin:16px 0;border-radius:var(--radius-panel);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:32px 24px;text-align:center}.theme-toggle{position:absolute;top:16px;right:16px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:none;background:var(--stage-ghost-hover);color:var(--stage-text)}.theme-toggle:hover:not(:disabled){background:var(--stage-toggle-hover)}.theme-toggle svg{width:20px;height:20px}.icon-moon{fill:currentColor}.icon-sun{fill:currentColor;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}[data-theme=dark] .icon-sun,[data-theme=light] .icon-moon{display:none}.state-label{font-weight:500;font-size:clamp(2rem,4vw,2.75rem);line-height:1.1;letter-spacing:-.03em;min-height:1.1em;margin:12px 0 0}.message{color:var(--stage-error);min-height:1.5rem;margin:0;max-width:40ch}.connect{margin-top:10px;min-width:200px}.toy:has(.owl-frame:not([data-state=disconnected],[data-state=error])) .connect{background:transparent;color:var(--stage-text);box-shadow:inset 0 0 0 1.5px var(--stage-ghost)}.toy:has(.owl-frame:not([data-state=disconnected],[data-state=error])) .connect:hover:not(:disabled){background:var(--stage-ghost-hover)}.hint{margin:14px 0 0;font-size:.875rem;color:var(--stage-text-soft)}.owl-frame{position:relative;width:min(360px,46vh,72vw);color:var(--owl);user-select:none;touch-action:none}.owl-frame svg{display:block;width:100%;height:auto}.sky{position:absolute;inset:0;z-index:-1;width:100%;height:100%;pointer-events:none}#heart{cursor:pointer;pointer-events:all;transform-box:fill-box;transform-origin:center;filter:drop-shadow(0 0 10px var(--heart));transition:transform .26s cubic-bezier(.3,1.8,.5,1)}#heart:hover{filter:drop-shadow(0 0 20px var(--heart))}[data-pressed] #heart{transform:scale(.88);transition-duration:90ms}#heart .cls-1{fill:var(--heart);transition:fill .3s ease}#heart .heart-hit{fill:var(--heart);fill-opacity:.14;transition:fill .3s ease}#heart .heart-spinner{fill:none;stroke:var(--heart-listen);stroke-width:40;stroke-dasharray:24 76;opacity:0}[data-state=disconnected],[data-state=connecting]{--heart: var(--heart-dormant)}[data-state=connecting] #heart{animation:glow 1s ease-in-out infinite}[data-state=listening],[data-state=hearing]{--heart: var(--heart-listen)}[data-state=listening] #heart,[data-state=hearing] #heart{animation:glow 3s ease-in-out infinite}[data-state=listening] .heart-hit,[data-state=hearing] .heart-hit{animation:inner-light 3s ease-in-out infinite}[data-state=thinking]{--heart: var(--heart-dormant)}[data-state=thinking] #heart{filter:drop-shadow(0 0 12px color-mix(in srgb,var(--heart-listen) 45%,transparent))}[data-state=thinking] #heart .heart-spinner{opacity:1;animation:orbit 1.1s linear infinite}[data-state=speaking]{--heart: var(--heart-speak)}[data-state=speaking] #heart{filter:drop-shadow(0 0 8px color-mix(in srgb,var(--heart) 55%,transparent))}[data-state=speaking] #heart .heart-hit{fill-opacity:.22}[data-state=error]{--heart: var(--heart-error)}[data-state=error] #heart{animation:blink .5s steps(2,start) 3}@keyframes glow{0%,to{filter:drop-shadow(0 0 4px var(--heart))}50%{filter:drop-shadow(0 0 26px var(--heart)) brightness(1.2)}}@keyframes inner-light{0%,to{fill-opacity:.08}50%{fill-opacity:.42}}@keyframes blink{to{visibility:hidden}}@keyframes orbit{to{stroke-dashoffset:100}}.transcript{display:flex;flex-direction:column;margin:16px;border-radius:var(--radius-panel);background:var(--panel);box-shadow:0 0 0 1px var(--line);overflow:hidden}.transcript h2{font-size:1.125rem;padding:22px 24px 14px;border-bottom:1px solid var(--line)}.transcript ol{flex:1;overflow-y:auto;list-style:none;margin:0;padding:20px;display:flex;flex-direction:column;gap:14px}.transcript ol:empty{justify-content:center}.transcript ol:empty:before{content:"Kliknij Połącz i po prostu mów. Rozmowa pojawi się tutaj.";align-self:center;max-width:24ch;text-align:center;color:var(--text-soft)}.transcript li{max-width:85%;padding:10px 16px 12px;border-radius:20px;overflow-wrap:anywhere}.transcript li:before{display:block;font-size:.8125rem;font-weight:500;margin-bottom:2px}.transcript li.fibo{align-self:flex-start;background:var(--bubble-fibo);color:var(--text);border-bottom-left-radius:6px}.transcript li.fibo:before{content:"Fibo";color:var(--text-soft)}.transcript li.user{align-self:flex-end;background:var(--bubble-user);color:var(--bubble-user-text);border-bottom-right-radius:6px}.transcript li.user:before{content:"Ty";color:var(--apricot);text-align:right}.transcript li.note{align-self:center;max-width:none;padding:4px 12px;border-radius:999px;background:var(--hover);color:var(--text-soft);font-size:.875rem}@media(max-width:900px){.layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;height:auto;min-height:100vh}.history{flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px;padding:16px 16px 4px}.brand{width:92px;margin:0 auto 0 0}.history h2{display:none}.history ul{flex-direction:row;gap:4px;overflow-x:auto;flex-basis:100%;min-width:0;padding:8px;margin:0 -8px;order:3}.history li button{white-space:nowrap}.history li button[aria-current=true]{box-shadow:inset 0 -3px 0 var(--apricot-deep)}.new-conversation{padding:8px 14px;font-size:.9375rem}.logout{align-self:center;padding:6px 4px;border:none;font-size:.875rem}.toy{margin:8px 16px;min-height:72vh}.owl-frame{width:min(300px,40vh,64vw)}.transcript{margin:8px 16px 16px;min-height:320px}}@media(prefers-reduced-motion:reduce){#heart,#heart .heart-hit,#heart .heart-spinner{animation:none!important;transition:none}}
