.quick-questions-section.enhanced-threading{background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);border:1px solid rgba(111,66,193,.15);border-radius:12px;padding:1.5rem;margin:1rem 0;box-shadow:0 2px 8px rgba(0,0,0,.08)}.threading-options{display:flex;flex-direction:column;gap:1.5rem}.follow-up-questions,.general-questions{padding:1rem;background:white;border-radius:8px;border:1px solid rgba(111,66,193,.1)}.follow-up-questions h6,.general-questions h6{color:#6f42c1;font-weight:600;margin-bottom:.75rem;display:flex;align-items:center}.follow-up-btn{background:linear-gradient(135deg,#4f8cff 0%,#6c5ce7 100%);color:white;border:none;border-radius:20px;padding:.5rem 1rem;margin:.25rem;font-size:.9rem;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 4px rgba(79,140,255,.3)}.follow-up-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(79,140,255,.4)}.question-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.progressive-loading .progress-container{background:white;border-radius:8px;padding:1rem;margin:.75rem 0;border:1px solid rgba(111,66,193,.1)}.progress-bar-container{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.progress-bar{flex:1;height:6px;background:#e9ecef;border-radius:3px;overflow:hidden;position:relative}.progress-fill{height:100%;background:linear-gradient(90deg,#4f8cff,#6c5ce7);border-radius:3px;transition:width .5s ease;width:0%}.progress-percentage{font-weight:600;color:#6f42c1;min-width:40px;text-align:right}.progress-description{font-size:.9rem;color:#6c757d;text-align:center}.progress-stage{font-size:.8rem;color:#6c757d;font-style:italic}.status-indicators{display:flex;justify-content:center;gap:.5rem;margin-top:.75rem}.status-dot{width:12px;height:12px;border-radius:50%;background:#e9ecef;border:2px solid #dee2e6;transition:all .3s ease;cursor:help}.status-dot.active{background:linear-gradient(135deg,#4f8cff 0%,#6c5ce7 100%);border-color:#4f8cff;box-shadow:0 0 8px rgba(79,140,255,.4)}.context-validation-prompt{background:linear-gradient(135deg,#fff3cd 0%,#fef7e0 100%);border:1px solid #f0ad4e;border-radius:12px;padding:1.5rem;margin:1rem 0;box-shadow:0 2px 8px rgba(240,173,78,.2)}.validation-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.validation-header i{color:#f0ad4e;font-size:1.2rem}.validation-header h6{color:#856404;margin:0;font-weight:600}.validation-suggestions{margin:1rem 0}.validation-suggestions ul{list-style:none;padding:0;margin:.5rem 0}.validation-suggestions li{margin:.25rem 0}.suggestion-btn{background:white;border:1px solid #f0ad4e;color:#856404;border-radius:20px;padding:.5rem 1rem;font-size:.9rem;cursor:pointer;transition:all .3s ease;display:inline-block;width:100%;text-align:left}.suggestion-btn:hover{background:#f0ad4e;color:white;transform:translateX(4px)}.validation-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(240,173,78,.3)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.follow-up-btn:focus,.suggestion-btn:focus,.status-dot:focus{outline:2px solid #6f42c1;outline-offset:2px}@media (max-width:768px){.threading-options{gap:1rem}.follow-up-questions,.general-questions{padding:.75rem}.progress-bar-container{flex-direction:column;gap:.5rem;align-items:stretch}.progress-percentage{text-align:center}.validation-actions{flex-direction:column}.validation-actions button{width:100%}}@keyframes fadeInOut{0%,100%{opacity:.7}50%{opacity:1}}@keyframes thinking-bounce-enhanced{0%{transform:translateY(0) scale(1)}100%{transform:translateY(-12px) scale(1.1);box-shadow:0 4px 12px rgba(79,140,255,.6)}}@keyframes thinking-container-pulse{0%,100%{background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);box-shadow:0 2px 8px rgba(0,0,0,.08)}50%{background:linear-gradient(135deg,#ffffff 0%,#f8f9fa 100%);box-shadow:0 4px 16px rgba(111,66,193,.15)}}@keyframes loading-slide{0%{left:-40px}100%{left:100%}}@keyframes loading-pulse{0%,100%{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.conversation-context-indicator{background:linear-gradient(135deg,#e3f2fd 0%,#f3e5f5 100%);border:1px solid rgba(111,66,193,.2);border-radius:8px;padding:.75rem;margin:.5rem 0;font-size:.9rem;color:#6f42c1;text-align:center}.conversation-topics{display:flex;flex-wrap:wrap;gap:.25rem;justify-content:center;margin-top:.5rem}.topic-badge{background:#6f42c1;color:white;padding:.2rem .5rem;border-radius:12px;font-size:.8rem;font-weight:500}.welcome-message{border-left:4px solid #6f42c1;padding-left:1rem}.welcome-title{color:#6f42c1;font-weight:600}.input-area{position:relative}.input-area::after{content:"💡 Tip: Be specific about your child's age, disability, or situation for better help";position:absolute;bottom:-1.5rem;left:0;right:0;font-size:.75rem;color:#6c757d;text-align:center;opacity:0;transition:opacity .3s ease}.input-area:focus-within::after{opacity:1}.input-btn{position:relative;overflow:visible}.input-btn::after{content:attr(title);position:absolute;bottom:100%;left:50%;transform:translateX(-50%);background:rgba(0,0,0,.8);color:white;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .3s ease;margin-bottom:.25rem;z-index:1000}.input-btn:hover::after,.input-btn:focus::after{opacity:1}.input-section.scrolling-focus{box-shadow:0 0 20px rgba(111,66,193,.3);border-radius:8px;transition:box-shadow .6s ease}.input-section.auto-focused{animation:gentle-pulse 1.5s ease-out}@keyframes gentle-pulse{0%,100%{box-shadow:0 0 0 rgba(111,66,193,.4)}50%{box-shadow:0 0 20px rgba(111,66,193,.4)}}.chat-message.bot{position:relative}.chat-message.bot::before{content:"";position:absolute;left:-10px;top:50%;transform:translateY(-50%);width:4px;height:0;background:linear-gradient(to bottom,#6f42c1,#4f8cff);border-radius:2px;transition:height .3s ease}.chat-message.bot:hover::before{height:60%}.question-prompt{background:linear-gradient(135deg,#f8f9fa 0%,#ffffff 100%);border-radius:8px;padding:1rem;margin-bottom:1rem;font-weight:500;color:#495057;text-align:center;border:1px solid rgba(111,66,193,.1)}.char-counter.approaching-limit{color:#fd7e14!important;font-weight:600;animation:gentle-warning 2s ease-in-out infinite}.char-counter.at-limit{color:#dc3545!important;font-weight:700;animation:urgent-warning 1s ease-in-out infinite}@keyframes gentle-warning{0%,100%{opacity:.7}50%{opacity:1}}@keyframes urgent-warning{0%,100%{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.assistant-label{position:relative;font-weight:500}.progressive-loading .assistant-label{display:flex;align-items:center;gap:.5rem}.progressive-loading .assistant-label::after{content:"";width:16px;height:16px;border:2px solid #6f42c1;border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.error-state .chat-message{border-left:4px solid #dc3545;background:linear-gradient(135deg,#f8d7da 0%,#ffeaa7 100%)}.error-state .message-content{color:#721c24}.success-indicator{display:inline-flex;align-items:center;gap:.25rem;color:#198754;font-weight:500}.success-indicator::before{content:"✅";font-size:.9em}.interactive-element{transition:all .3s ease}.interactive-element:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.interactive-element:active{transform:translateY(0);box-shadow:0 2px 4px rgba(0,0,0,.1)}
