.course-assistant-wrapper{position:fixed;top:100px;left:30px;z-index:10000;font-family:var(--font-sans)}.assistant-trigger{width:70px;height:70px;border-radius:50%;background:linear-gradient(135deg,#198754,#036c2d);border:4px solid white;color:white;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px rgba(0,0,0,.2),0 0 20px rgba(25,135,84,.4);cursor:pointer;position:relative;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.assistant-trigger:hover{box-shadow:0 15px 40px rgba(0,0,0,.25),0 0 30px rgba(25,135,84,.6)}.assistant-trigger:before{content:"";position:absolute;inset:-8px;border:2px solid #198754;border-radius:50%;animation:pulse-ring 2s infinite;opacity:0}@keyframes pulse-ring{0%{transform:scale(.8);opacity:.5}to{transform:scale(1.3);opacity:0}}.assistant-trigger.active{background:#1a1a1a;transform:rotate(90deg)}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.assistant-window{position:absolute;top:80px;left:0;width:380px;max-width:calc(100vw - 60px);height:550px;max-height:calc(100vh - 200px);background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(0,0,0,.05);border-radius:24px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.15);transform-origin:top left}.assistant-header{padding:20px;background:linear-gradient(135deg,#198754,#036c2d);color:white}.assistant-info{gap:12px}.assistant-info,.bot-avatar{display:flex;align-items:center}.bot-avatar{width:40px;height:40px;background:rgba(255,255,255,.2);border-radius:12px;justify-content:center;position:relative}.status-indicator{position:absolute;bottom:-2px;right:-2px;width:10px;height:10px;background:#22c55e;border:2px solid #036c2d;border-radius:50%}.assistant-info h3{font-size:16px;font-weight:700;margin:0}.assistant-info p{font-size:12px;margin:0;opacity:.8}.assistant-body{flex:1 1;padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:15px;background:#f8fafc}.message-container{max-width:85%;display:flex}.message-container.bot{align-self:flex-start}.message-container.user{align-self:flex-end}.message-bubble{padding:12px 16px;border-radius:18px;font-size:14px;line-height:1.5}.bot .message-bubble{background:white;color:#1a1a1a;border-bottom-left-radius:4px;box-shadow:0 2px 10px rgba(0,0,0,.05)}.user .message-bubble{background:#198754;color:white;border-bottom-right-radius:4px}.message-options{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.option-btn{background:#f1f5f9;border:1px solid #e2e8f0;color:#198754;padding:6px 12px;border-radius:100px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.option-btn:hover{background:#198754;color:white;border-color:#198754}.typing-indicator{display:flex;gap:4px;padding:12px 16px;background:white;border-radius:18px;border-bottom-left-radius:4px;width:-moz-fit-content;width:fit-content}.typing-indicator span{width:6px;height:6px;background:#cbd5e1;border-radius:50%;animation:typing 1s ease-in-out infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.assistant-footer{padding:15px 20px;background:white;border-top:1px solid #f1f5f9}.assistant-footer form{display:flex;gap:10px}.assistant-footer input{flex:1 1;border:1px solid #e2e8f0;border-radius:100px;padding:10px 18px;font-size:14px;outline:none;transition:all .2s}.assistant-footer input:focus{border-color:#198754;box-shadow:0 0 0 3px rgba(25,135,84,.1)}.assistant-footer button{width:40px;height:40px;border-radius:50%;background:#198754;color:white;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.assistant-footer button:disabled{background:#e2e8f0;cursor:not-allowed}@media (max-width:480px){.course-assistant-wrapper{top:80px;left:10px}.assistant-trigger{width:50px;height:50px;border-width:3px}.assistant-trigger svg{width:20px;height:20px}.assistant-window{width:calc(100vw - 20px);height:450px}}