:root{--naya-color: #E94069;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color-scheme:light dark}*{box-sizing:border-box}body{margin:0}main{max-width:960px;margin:0 auto;padding:16px}.loading,.login{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:20vh;text-align:center}.login h1{margin:0}button{font:inherit;padding:8px 16px;border-radius:8px;border:1px solid #ccc3;background:var(--naya-color);color:#fff;cursor:pointer}button:disabled{opacity:.5;cursor:default}.shell{display:grid;grid-template-columns:220px 1fr;gap:16px;height:90vh}aside{display:flex;flex-direction:column;gap:8px;border-right:1px solid #ccc3;padding-right:12px}.brand{display:flex;align-items:center;gap:8px;font-weight:600}aside ul{list-style:none;padding:0;margin:0;flex:1;overflow-y:auto}aside li button{background:none;color:inherit;border:none;width:100%;text-align:left;padding:6px}aside li.active button{background:#8884;border-radius:6px}.new,.logout{background:none;border:1px solid #ccc3;color:inherit}.chat{display:flex;flex-direction:column;height:100%}.messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:8px 0}.msg{padding:8px 12px;border-radius:10px;max-width:70%}.msg.user{align-self:flex-end;background:var(--naya-color);color:#fff}.msg.assistant{align-self:flex-start;background:#8882}.error{color:#c0392b}form{display:flex;gap:8px}form input{flex:1;padding:8px 12px;border-radius:8px;border:1px solid #ccc3;font:inherit}.naya{--naya-color: #E94069;width:auto;height:var(--pf-assistant-size, 24px);overflow:visible;fill:var(--naya-color);display:inline-block;vertical-align:middle}.naya *{transform-box:fill-box;transform-origin:center}.naya__mouth{fill:none;stroke:var(--naya-color);stroke-width:3.1}.naya__antenna,.naya__body{transform-origin:50% 100%}.naya__fx,.naya__eyes-happy,.naya__mouth-open{display:none}.naya__ring{fill:none;stroke:var(--naya-color);stroke-width:.8}.naya__eyes-happy path,.naya__waves path{fill:none;stroke:var(--naya-color);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.naya__zzz text{font:700 8px system-ui,sans-serif}.naya__badge circle{stroke:var(--naya-badge-ring, #fff);stroke-width:1.4}.naya__badge text{fill:#fff;font:700 5.5px system-ui,sans-serif}.pf-assistant-avatar[data-state=idle] .naya .naya__body{animation:naya-bob 4s ease-in-out infinite}.pf-assistant-avatar[data-state=idle] .naya .naya__eye{animation:naya-blink 5s infinite}.pf-assistant-avatar[data-state=listening] .naya .naya__ball{animation:naya-glow 1.4s ease-in-out infinite}.pf-assistant-avatar[data-state=listening] .naya .naya__ring{display:block;animation:naya-ring 1.4s ease-out infinite}.pf-assistant-avatar[data-state=listening] .naya .naya__eye{transform:scale(1.25)}.pf-assistant-avatar[data-state=thinking] .naya .naya__body{animation:naya-tilt 3s ease-in-out infinite}.pf-assistant-avatar[data-state=thinking] .naya .naya__eyes{transform:translate(1.4px,-1.6px)}.pf-assistant-avatar[data-state=thinking] .naya .naya__ball{animation:naya-blinkball 1s steps(2,jump-none) infinite}.pf-assistant-avatar[data-state=thinking] .naya .naya__dots{display:block}.pf-assistant-avatar[data-state=thinking] .naya .naya__dots circle{animation:naya-dot 1.2s ease-in-out infinite}.pf-assistant-avatar[data-state=thinking] .naya .naya__dots circle:nth-child(2){animation-delay:.2s}.pf-assistant-avatar[data-state=thinking] .naya .naya__dots circle:nth-child(3){animation-delay:.4s}.pf-assistant-avatar[data-state=talking] .naya .naya__body{animation:naya-bounce .5s ease-in-out infinite}.pf-assistant-avatar[data-state=talking] .naya .naya__mouth{animation:naya-mouth-a .5s steps(1) infinite}.pf-assistant-avatar[data-state=talking] .naya .naya__mouth-open{display:block;animation:naya-mouth-b .5s steps(1) infinite}.pf-assistant-avatar[data-state=success] .naya .naya__body{animation:naya-hop 1.6s ease-out infinite}.pf-assistant-avatar[data-state=success] .naya .naya__eyes{display:none}.pf-assistant-avatar[data-state=success] .naya .naya__eyes-happy{display:block}.pf-assistant-avatar[data-state=success] .naya .naya__sparkle{display:block;animation:naya-sparkle 1.6s ease-out infinite}.pf-assistant-avatar[data-state=error] .naya .naya__body{animation:naya-shake 2.4s ease-in-out infinite}.pf-assistant-avatar[data-state=error] .naya .naya__mouth{transform:translateY(1px) scaleY(-1)}.pf-assistant-avatar[data-state=error] .naya .naya__antenna{transform:rotate(-28deg)}.pf-assistant-avatar[data-state=error] .naya .naya__eyes{transform:translateY(1px)}.pf-assistant-avatar[data-state=offline] .naya{filter:grayscale(1);opacity:.55}.pf-assistant-avatar[data-state=offline] .naya .naya__body{animation:naya-bob 6s ease-in-out infinite}.pf-assistant-avatar[data-state=offline] .naya .naya__eye{transform:scaleY(.18)}.pf-assistant-avatar[data-state=offline] .naya .naya__mouth{transform:scale(.7)}.pf-assistant-avatar[data-state=offline] .naya .naya__antenna{transform:rotate(-12deg)}.pf-assistant-avatar[data-state=offline] .naya .naya__zzz{display:block}.pf-assistant-avatar[data-state=offline] .naya .naya__zzz text{opacity:0;animation:naya-z 3s ease-out infinite}.pf-assistant-avatar[data-state=offline] .naya .naya__zzz text:nth-child(2){animation-delay:1s}.pf-assistant-avatar[data-state=offline] .naya .naya__zzz text:nth-child(3){animation-delay:2s}.pf-assistant-avatar[data-state=greeting] .naya .naya__body{animation:naya-greet 1.8s ease-in-out infinite}.pf-assistant-avatar[data-state=greeting] .naya .naya__antenna{animation:naya-wiggle .6s ease-in-out infinite}.pf-assistant-avatar[data-state=greeting] .naya .naya__waves{display:block;animation:naya-waves 1.8s ease-in-out infinite}.pf-assistant-avatar[data-state=notify] .naya .naya__badge{display:block;animation:naya-pop 2.4s cubic-bezier(.3,1.6,.5,1) infinite}.pf-assistant-avatar[data-state=notify] .naya .naya__ring{display:block;animation:naya-ring 1.2s ease-out infinite}.pf-assistant-avatar[data-state=notify] .naya .naya__antenna{animation:naya-wiggle .4s ease-in-out 3}@keyframes naya-bob{50%{transform:translateY(-1px)}}@keyframes naya-blink{0%,90%,to{transform:scaleY(1)}93%{transform:scaleY(.1)}}@keyframes naya-glow{0%,to{transform:scale(1);filter:drop-shadow(0 0 0 transparent)}50%{transform:scale(1.2);filter:drop-shadow(0 0 2px var(--naya-color))}}@keyframes naya-ring{0%{transform:scale(1);opacity:.9}to{transform:scale(2.8);opacity:0}}@keyframes naya-tilt{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}@keyframes naya-blinkball{50%{opacity:.3}}@keyframes naya-dot{0%,to{opacity:.2;transform:translateY(0)}40%{opacity:1;transform:translateY(-1.5px)}}@keyframes naya-bounce{50%{transform:translateY(-.8px)}}@keyframes naya-mouth-a{0%{opacity:1}50%{opacity:0}}@keyframes naya-mouth-b{0%{opacity:0}50%{opacity:1}}@keyframes naya-hop{0%{transform:translateY(0) scale(1)}10%{transform:translateY(0) scale(1.06,.94)}30%{transform:translateY(-6px) scale(.97,1.04)}50%{transform:translateY(0) scale(1.04,.96)}60%,to{transform:translateY(0) scale(1)}}@keyframes naya-sparkle{0%,15%{transform:scale(0) rotate(0);opacity:0}35%{transform:scale(1.2) rotate(45deg);opacity:1}70%,to{transform:scale(.6) rotate(90deg);opacity:0}}@keyframes naya-shake{0%,30%,to{transform:translate(0)}5%,15%,25%{transform:translate(-1.6px)}10%,20%{transform:translate(1.6px)}}@keyframes naya-z{0%{opacity:0;transform:translate(0) scale(.6)}30%{opacity:1}to{opacity:0;transform:translate(4px,-8px) scale(1.1)}}@keyframes naya-greet{0%,to{transform:rotate(0)}20%{transform:rotate(-8deg)}40%{transform:rotate(6deg)}60%{transform:rotate(-6deg)}80%{transform:rotate(3deg)}}@keyframes naya-wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-15deg)}75%{transform:rotate(15deg)}}@keyframes naya-waves{0%,to{opacity:.2;transform:translate(0)}50%{opacity:1;transform:translate(1px)}}@keyframes naya-pop{0%{transform:scale(0)}12%{transform:scale(1.25)}20%,85%{transform:scale(1)}to{transform:scale(0)}}@media(prefers-reduced-motion:reduce){.naya,.naya *{animation:none!important}.pf-assistant-avatar[data-state=listening] .naya .naya__ball,.pf-assistant-avatar[data-state=thinking] .naya .naya__dots,.pf-assistant-avatar[data-state=notify] .naya .naya__badge{animation:naya-fade 2s ease-in-out infinite!important}.pf-assistant-avatar[data-state=offline] .naya .naya__zzz text{opacity:.8}.naya__ring,.naya__waves{display:none!important}}@keyframes naya-fade{50%{opacity:.45}}
