.assistant-char{--char-body:var(--primary);--char-light:oklch(82% .16 85);background:linear-gradient(180deg, color-mix(in oklab, var(--char-body) 88%, white), color-mix(in oklab, var(--char-body) 90%, black));border-radius:.32em .32em .25em .25em;width:1em;height:.93em;display:block;position:relative;box-shadow:inset 0 .02em oklch(100% 0 0/.25),inset 0 -.035em oklch(0% 0 0/.15)}.assistant-char-antenna{background:color-mix(in oklab, var(--char-body) 90%, black);width:.036em;height:.125em;margin-left:-.018em;position:absolute;top:-.125em;left:50%}.assistant-char-antenna:after{content:"";background:var(--char-light);width:.125em;height:.125em;box-shadow:0 0 .14em color-mix(in oklab, var(--char-light) 80%, transparent);border-radius:999px;position:absolute;top:-.09em;left:-.045em}.assistant-char-eyes{justify-content:center;align-items:center;height:.61em;transition:transform .12s ease-out;display:flex;position:absolute;inset:0 0 auto}.assistant-char-look{gap:.16em;display:flex}.assistant-char-eye{width:.143em;height:.232em;position:relative}.assistant-char-eye-open,.assistant-char-eye-happy{transition:opacity .12s ease-out;position:absolute;inset:0}.assistant-char-eye-open{background:#fff;border-radius:999px;animation:4.6s infinite assistant-char-blink}.assistant-char-eye-happy{opacity:0;border:max(1.5px,.045em) solid #fff;border-bottom:0;border-radius:.143em .143em 0 0;height:.143em;top:.054em}.assistant-char[data-mood=happy] .assistant-char-eye-open{opacity:0}.assistant-char[data-mood=happy] .assistant-char-eye-happy{opacity:1}.assistant-char[data-mood=thinking] .assistant-char-look{animation:1.6s cubic-bezier(.45,0,.55,1) infinite assistant-char-think}.assistant-char[data-mood=thinking] .assistant-char-eye-open{animation:none;transform:scaleY(.75)}.assistant-char[data-mood=thinking] .assistant-char-antenna:after{animation:1.2s ease-in-out infinite assistant-char-pulse}.assistant-char-float{animation:3.2s cubic-bezier(.45,0,.55,1) infinite assistant-char-float}@keyframes assistant-char-float{0%,to{transform:translateY(0)}50%{transform:translateY(-.07em)}}@keyframes assistant-char-blink{0%,93%,to{transform:scaleY(1)}96%{transform:scaleY(.1)}}@keyframes assistant-char-think{0%,to{transform:translate(.05em,-.03em)}50%{transform:translate(-.05em,-.03em)}}@keyframes assistant-char-pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.assistant-char-eye-open,.assistant-char-float,.assistant-char[data-mood=thinking] .assistant-char-look,.assistant-char[data-mood=thinking] .assistant-char-antenna:after{animation:none}}.lesson-peek{--peek-y:24px;animation:.22s cubic-bezier(.23,1,.32,1) backwards lesson-peek-enter}.lesson-peek[data-pose=duck]{--peek-y:50px}.lesson-peek[data-pose=up]{--peek-y:0px}.lesson-peek:has(:focus-visible){--peek-y:0px}.lesson-peek-body{transform:translateY(var(--peek-y));margin-top:14px;transition:transform .32s cubic-bezier(.34,1.4,.64,1)}.lesson-peek[data-pose=duck] .lesson-peek-body{transition:transform .18s cubic-bezier(.23,1,.32,1)}.lesson-peek:has(:focus-visible) .assistant-char-eye-open{opacity:0}.lesson-peek:has(:focus-visible) .assistant-char-eye-happy{opacity:1}.lesson-peek-hand{background:var(--primary);pointer-events:none;border-radius:6px 6px 3px 3px;width:13px;height:8px;transition:transform .22s cubic-bezier(.23,1,.32,1);position:absolute;bottom:-2px;box-shadow:inset 0 1px oklch(100% 0 0/.3)}.lesson-peek[data-pose=duck] .lesson-peek-hand{transform:translateY(10px)}.lesson-peek-bubble{opacity:0;transform-origin:100% 100%;pointer-events:none;transition:opacity .16s ease-out,transform .2s cubic-bezier(.23,1,.32,1);transform:translateY(6px)scale(.96)}.lesson-peek[data-pose=up] .lesson-peek-bubble{opacity:1;transform:none}.lesson-peek:has(:focus-visible) .lesson-peek-bubble{opacity:1;transform:none}@media (hover:hover) and (pointer:fine){.lesson-peek:hover{--peek-y:0px}.lesson-peek:hover .assistant-char-eye-open{opacity:0}.lesson-peek:hover .assistant-char-eye-happy{opacity:1}.lesson-peek:hover .lesson-peek-bubble{opacity:1;transform:none}}@keyframes lesson-peek-enter{0%{opacity:0;transform:scale(.9)}}@media (prefers-reduced-motion:reduce){.lesson-peek{animation-name:lesson-peek-fade}.lesson-peek-body,.lesson-peek-hand,.lesson-peek-bubble{transition-property:opacity}}@keyframes lesson-peek-fade{0%{opacity:0}}
