@tailwind base;@tailwind components;@tailwind utilities;:root{--primary-color:#3b82f6;--secondary-color:#6b7280;--danger-color:#ef4444;--success-color:#10b981;--warning-color:#f59e0b}*{box-sizing:border-box}body,html{height:100%;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}.message{display:flex;padding:12px;margin:8px 0;border-radius:8px;cursor:pointer;transition:all .2s ease-in-out;border:1px solid transparent}.message:hover{background-color:#f8fafc;border-color:#e2e8f0}.message.selected{background-color:#dbeafe;border-left:4px solid var(--primary-color);box-shadow:0 2px 4px rgba(59,130,246,.1)}.message-checkbox{margin-right:12px;display:flex;align-items:flex-start;padding-top:4px;flex-shrink:0}.message-content{flex:1 1;min-width:0}.voice-input-container{position:relative;display:flex;align-items:center;width:100%}.voice-input-wrapper{position:relative;flex:1 1}.voice-input-button{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);padding:.5rem;border-radius:50%;transition:all .3s ease;background:none;border:none;cursor:pointer;font-size:1.2em;z-index:10;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem}.voice-input-button:not(.listening):hover{background-color:#f1f5f9;transform:translateY(-50%) scale(1.1)}.voice-input-button.listening{background-color:#fecaca;color:#dc2626;animation:voice-pulse 1.5s ease-in-out infinite;box-shadow:0 0 0 0 rgba(220,38,38,.7)}.voice-input-button:disabled{opacity:.5;cursor:not-allowed;transform:translateY(-50%) scale(1)}@keyframes voice-pulse{0%{box-shadow:0 0 0 0 rgba(220,38,38,.7)}70%{box-shadow:0 0 0 10px rgba(220,38,38,0)}to{box-shadow:0 0 0 0 rgba(220,38,38,0)}}.voice-status-indicator{margin-top:.5rem;text-align:center}.voice-status-content{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:9999px;font-size:.875rem;font-weight:500;transition:all .3s ease}.voice-status-listening{background-color:#fef2f2;color:#dc2626;border:1px solid #fecaca;animation:status-pulse 2s infinite}.voice-status-error{background-color:#fffbeb;color:#d97706;border:1px solid #fed7aa}.voice-status-success{background-color:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}@keyframes status-pulse{0%,to{opacity:1}50%{opacity:.7}}.voice-dots{display:flex;align-items:center;gap:3px}.voice-dot{width:6px;height:6px;border-radius:50%;background-color:currentColor;animation:voice-dots-bounce 1.4s ease-in-out infinite both}.voice-dot:first-child{animation-delay:-.32s}.voice-dot:nth-child(2){animation-delay:-.16s}.voice-dot:nth-child(3){animation-delay:0s}@keyframes voice-dots-bounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1.2);opacity:1}}.message-selection-toolbar{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:linear-gradient(135deg,#dbeafe,#e0f2fe);border:1px solid #93c5fd;border-radius:.75rem;margin-bottom:1rem;box-shadow:0 2px 8px rgba(59,130,246,.1)}.message-selection-info{color:#1d4ed8;font-weight:600;font-size:.95rem}.message-selection-actions{display:flex;align-items:center;gap:.75rem}.knowledge-save-modal{position:fixed;inset:0;background-color:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.knowledge-save-content{background-color:#fff;border-radius:.75rem;width:100%;max-width:32rem;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);animation:modal-slide-in .3s ease-out}@keyframes modal-slide-in{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.knowledge-save-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.knowledge-save-body{padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.knowledge-save-preview{background-color:#f8fafc;padding:1rem;border-radius:.5rem;max-height:12rem;overflow-y:auto;font-size:.9rem;color:#374151;line-height:1.5;border:1px solid #e2e8f0}.knowledge-save-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid #e5e7eb}.kb-title{-webkit-line-clamp:2;line-height:1.4;min-height:2.8rem;font-weight:600;color:#1f2937}.kb-description,.kb-title{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.kb-description{-webkit-line-clamp:3;min-height:4.5rem;color:#6b7280;line-height:1.5}.kb-card{transition:all .3s ease;border:1px solid #e5e7eb;border-radius:.75rem;overflow:hidden}.kb-card:hover{transform:translateY(-2px);box-shadow:0 10px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);border-color:var(--primary-color)}.kb-card-header{padding:1.25rem;border-bottom:1px solid #f3f4f6;background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.kb-card-body{padding:1.25rem}.kb-tag{display:inline-block;padding:.25rem .75rem;background-color:#e0f2fe;color:#0369a1;border-radius:9999px;font-size:.75rem;font-weight:500;margin-right:.5rem;margin-bottom:.5rem}.chat-container{display:flex;flex-direction:column;height:100vh;background-color:#fff;border-radius:.75rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);overflow:hidden}.messages-container{flex:1 1;overflow-y:auto;padding:1.25rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);display:flex;flex-direction:column;gap:1rem}.message-input-container{border-top:1px solid #e5e7eb;padding:1.25rem;background-color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.message-input-wrapper{display:flex;gap:.75rem;align-items:flex-end}@layer components{.btn,.btn-danger,.btn-primary,.btn-secondary,.btn-success,.card,.input-field{@apply bg-white rounded-lg shadow-md p-6 hover:shadow-lg transition-all duration-200 border border-gray-200}}.text-ellipsis-2{-webkit-line-clamp:2}.text-ellipsis-2,.text-ellipsis-3{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.text-ellipsis-3{-webkit-line-clamp:3}.flex-min-w-0{flex:1 1;min-width:0}@media (max-width:768px){.message-selection-toolbar{flex-direction:column;gap:.75rem;align-items:stretch;padding:.75rem}.message-selection-actions{justify-content:center;flex-wrap:wrap}.knowledge-save-content{margin:.5rem;max-width:none}.message-input-wrapper{flex-direction:column;gap:.5rem}.voice-input-button{position:relative;right:auto;top:auto;transform:none;align-self:flex-end;margin-top:.5rem}.kb-title{min-height:2.4rem;-webkit-line-clamp:2;font-size:1rem}.kb-description{min-height:3.8rem;-webkit-line-clamp:2;font-size:.875rem}}@media (max-width:480px){.kb-card-body,.kb-card-header,.message-input-container,.messages-container{padding:1rem}}@media (prefers-color-scheme:dark){.dark\:kb-card{background-color:#1f2937;border-color:#374151;color:#f9fafb}.dark\:kb-title{color:#f9fafb}.dark\:kb-description{color:#d1d5db}.dark\:knowledge-save-content{background-color:#1f2937;color:#f9fafb}.dark\:knowledge-save-preview{background-color:#374151;color:#d1d5db;border-color:#4b5563}}@media (prefers-reduced-motion:reduce){.btn,.kb-card,.voice-dot,.voice-input-button.listening{animation:none!important;transition:none!important}.voice-input-button.listening{background-color:#fecaca}}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}@media (prefers-contrast:high){.voice-input-button.listening{background-color:red;color:#fff;border:3px solid #fff}.message.selected{border-left:6px solid var(--primary-color);background-color:#e0f2ff}}@media print{.knowledge-save-modal,.message-selection-toolbar,.voice-input-button{display:none!important}.chat-container{box-shadow:none;border:1px solid #000}}.knowledge-detail-content{background-color:#fff!important;color:#374151!important;border:1px solid #e5e7eb!important;border-radius:.5rem;padding:1.5rem;min-height:300px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.875rem;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.knowledge-detail-modal code,.knowledge-detail-modal pre{background-color:#fff!important;color:#374151!important;border:none!important}.knowledge-detail-modal *{color:inherit!important}.knowledge-detail-modal textarea{background-color:#fff!important;color:#374151!important;border:1px solid #d1d5db!important}.knowledge-detail-modal textarea:focus{border-color:#3b82f6!important;box-shadow:0 0 0 3px rgba(59,130,246,.1)!important}.knowledge-detail-modal .bg-black,.knowledge-detail-modal .dark\:bg-gray-800{background-color:#fff!important}.knowledge-detail-content-area{all:initial;display:block;background-color:#fff!important;color:#374151!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.875rem;line-height:1.5;white-space:pre-wrap;word-wrap:break-word;padding:1rem;border-radius:.375rem;border:1px solid #e5e7eb}.perspective-1000{perspective:1000px}.transform-style-3d{transform-style:preserve-3d}.backface-hidden{-webkit-backface-visibility:hidden;backface-visibility:hidden}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{transform:translateX(-20px);opacity:0}to{transform:translateX(0);opacity:1}}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-slide-in{animation:slideIn .3s ease-out}.rotate-card{transition:transform .3s ease}.rotate-card:hover{transform:scale(1.05) rotate(2deg)}.combo-header,.combo-item,.combo-items{@apply flex justify-between text-sm py-1 text-gray-600}