
        #showcase-root {
            font-family: 'Inter', 'Noto Sans TC', sans-serif;
            background-color: #0b0f19;
            background-image: radial-gradient(circle at 1px 1px, rgba(255, 255, 255, 0.05) 1px, transparent 0);
            background-size: 2.5rem 2.5rem;
        }

        #showcase-root .font-orbitron {
            font-family: 'Orbitron', sans-serif;
        }
        #showcase-root .glass-panel {
            background: rgba(12, 19, 34, 0.85);
            backdrop-filter: blur(20px);
            border: 1px solid rgba(59, 130, 246, 0.2);
            box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.37);
        }
        @keyframes llm08-rag-fadeIn {
            from {
                opacity: 0;
                transform: translateY(10px);
            }

            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        @keyframes llm08-rag-pulse {

            0%,
            100% {
                opacity: 1;
            }

            50% {
                opacity: 0.5;
            }
        }

        @keyframes llm08-rag-glow {

            0%,
            100% {
                box-shadow: 0 0 20px #fbbf24, inset 0 0 15px rgba(251, 191, 36, 0.2);
                border-color: #fbbf24;
            }

            50% {
                box-shadow: 0 0 30px #fbbf24, inset 0 0 20px rgba(251, 191, 36, 0.3);
                border-color: #f59e0b;
            }
        }

        @keyframes llm08-rag-conflictGlow {

            0%,
            100% {
                box-shadow: 0 0 20px rgba(239, 68, 68, 0.8), 0 0 40px rgba(245, 158, 11, 0.6);
                border-color: #ef4444;
                transform: scale(1.02);
            }

            50% {
                box-shadow: 0 0 30px rgba(245, 158, 11, 1), 0 0 50px rgba(239, 68, 68, 0.8);
                border-color: #f59e0b;
                transform: scale(1.04);
            }
        }

        @keyframes llm08-rag-shake {

            0%,
            100% {
                transform: translateX(0);
            }

            25% {
                transform: translateX(-5px);
            }

            75% {
                transform: translateX(5px);
            }
        }

        @keyframes llm08-rag-confused {
            0% {
                transform: rotate(0deg) scale(1);
                opacity: 1;
            }

            25% {
                transform: rotate(-15deg) scale(1.2);
            }

            50% {
                transform: rotate(15deg) scale(1.1);
            }

            75% {
                transform: rotate(-10deg) scale(1.15);
            }

            100% {
                transform: rotate(0deg) scale(1);
                opacity: 1;
            }
        }

        @keyframes llm08-rag-dataParticleFlow {
            0% {
                offset-distance: 0%;
                transform: scale(0.5);
                opacity: 0;
            }

            20% {
                opacity: 1;
                transform: scale(1);
            }

            80% {
                opacity: 0.8;
                transform: scale(0.8);
            }

            100% {
                offset-distance: 100%;
                opacity: 0;
                transform: scale(0.1);
            }
        }

        #showcase-root .fade-in {
            animation: llm08-rag-fadeIn 0.5s ease-out forwards;
        }

        #showcase-root .pulse {
            animation: llm08-rag-pulse 2s ease-in-out infinite;
        }

        #showcase-root .glow-gold {
            animation: llm08-rag-glow 2s ease-in-out;
        }

        #showcase-root .glow-conflict {
            animation: llm08-rag-conflictGlow 2.5s ease-in-out infinite, llm08-rag-shake 0.5s ease-in-out;
        }

        #showcase-root .shake {
            animation: llm08-rag-shake 0.5s ease-in-out;
        }

        #showcase-root .custom-scrollbar::-webkit-scrollbar {
            width: 6px;
        }

        #showcase-root .custom-scrollbar::-webkit-scrollbar-track {
            background: transparent;
        }

        #showcase-root .custom-scrollbar::-webkit-scrollbar-thumb {
            background-color: rgba(5, 150, 105, 0.3);
            border-radius: 10px;
        }

        #showcase-root .document-card {
            background: rgba(30, 41, 59, 0.6);
            border: 2px solid rgba(59, 130, 246, 0.3);
            transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
            position: relative;
            overflow: visible;
        }

        #showcase-root .document-card.active {
            transform: translateY(-2px) scale(1.01);
            border-color: #e0e0e0;
            background: rgba(224, 224, 224, 0.1);
            animation: llm08-rag-glow 3s ease-in-out;
        }

        #showcase-root .document-card.conflict {
            animation: llm08-rag-conflictGlow 2.5s ease-in-out infinite, llm08-rag-shake 0.5s ease-in-out;
        }

        #showcase-root .confusion-indicator {
            position: absolute;
            top: -25px;
            right: 5px;
            width: 40px;
            height: 40px;
            background: #ef4444;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 24px;
            font-weight: bold;
            color: white;
            animation: llm08-rag-confused 2s ease-in-out infinite;
            box-shadow: 0 0 25px rgba(239, 68, 68, 0.7);
            z-index: 100;
        }

        #showcase-root .chat-message {
            animation: llm08-rag-fadeIn 0.5s ease-out;
        }

        #showcase-root .typing-indicator,#showcase-root
        .thinking-indicator {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            padding: 8px 12px;
            background: rgba(59, 130, 246, 0.1);
            border-radius: 20px;
        }

        #showcase-root .typing-indicator span {
            width: 8px;
            height: 8px;
            background: #3b82f6;
            border-radius: 50%;
            animation: llm08-rag-pulse 1.4s ease-in-out infinite;
        }

        #showcase-root .typing-indicator span:nth-child(2) {
            animation-delay: 0.2s;
        }

        #showcase-root .typing-indicator span:nth-child(3) {
            animation-delay: 0.4s;
        }

        #showcase-root .suite-card {
            background: linear-gradient(135deg, rgba(251, 191, 36, 0.15), rgba(245, 158, 11, 0.1));
            border: 2px solid #fbbf24;
            box-shadow: 0 0 30px rgba(251, 191, 36, 0.3);
        }

        #showcase-root .chat-input {
            background: rgba(255, 255, 255, 0.05);
            border: 1px solid rgba(59, 130, 246, 0.3);
            transition: all 0.3s ease;
        }

        #showcase-root .chat-input:focus {
            outline: none;
            border-color: #3b82f6;
            box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.2);
            background: rgba(255, 255, 255, 0.1);
        }

        #showcase-root .send-button {
            background: linear-gradient(135deg, #3b82f6, #1e40af);
            transition: all 0.3s ease;
        }

        #showcase-root .send-button:hover:not(:disabled) {
            transform: translateY(-2px);
            box-shadow: 0 10px 20px rgba(59, 130, 246, 0.3);
        }

        #showcase-root .send-button:disabled {
            background: #4b5563;
            cursor: not-allowed;
            opacity: 0.6;
        }

        #showcase-root .step-indicator {
            background: rgba(59, 130, 246, 0.1);
            border-left: 3px solid #3b82f6;
            transition: all 0.3s ease;
        }

        #showcase-root .step-indicator.active {
            background: rgba(59, 130, 246, 0.2);
            border-left-color: #fbbf24;
            box-shadow: 0 0 20px rgba(251, 191, 36, 0.3);
        }

        #showcase-root .step-indicator.completed {
            opacity: 0.5;
            border-left-color: #6b7280;
        }

        #showcase-root .info-message {
            background: rgba(59, 130, 246, 0.1);
            border: 1px solid rgba(59, 130, 246, 0.3);
            border-radius: 8px;
            padding: 12px 16px;
            margin: 8px 0;
            display: flex;
            align-items: center;
            gap: 8px;
        }

        #showcase-root .info-message ion-icon {
            color: #3b82f6;
            font-size: 20px;
        }

        #showcase-root .warning-message {
            background: rgba(239, 68, 68, 0.1);
            border: 1px solid rgba(239, 68, 68, 0.3);
            border-radius: 8px;
            padding: 12px 16px;
            margin: 8px 0;
            display: flex;
            align-items: center;
            gap: 8px;
        }

        #showcase-root .warning-message ion-icon {
            color: #ef4444;
            font-size: 20px;
        }

        #showcase-root .rag-database {
            background: rgba(15, 23, 42, 0.8);
            border: 1px solid rgba(59, 130, 246, 0.2);
            border-radius: 12px;
            padding: 16px;
            position: relative;
            overflow: hidden;
        }

        #showcase-root .rag-database::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 3px;
            background: linear-gradient(90deg, #3b82f6, #10b981, #3b82f6);
            animation: llm08-rag-pulse 3s ease-in-out infinite;
        }

        #showcase-root .data-particle {
            position: fixed;
            width: 6px;
            height: 6px;
            border-radius: 50%;
            pointer-events: none;
            z-index: 1000;
            offset-rotate: 0deg;
        }

        #showcase-root .vector-db-anim {
            width: 120px;
            height: 120px;
            background: linear-gradient(135deg, #059669, #10b981);
            border-radius: 24px;
            display: flex;
            align-items: center;
            justify-content: center;
            box-shadow: 0 0 60px rgba(5, 150, 105, 0.6);
            position: relative;
            animation: llm08-rag-pulse 3s ease-in-out infinite;
        }
        @media (max-width: 1023px) {
            #showcase-root {
                overflow-y: auto;
            }
            #showcase-root #main-panel {
                height: 70vh;
                min-height: 500px;
                max-height: 700px;
            }
            #showcase-root #chat-container {
                height: calc(100% - 120px);
                max-height: 400px;
                overflow-y: auto;
            }
            #showcase-root .vector-db-anim {
                width: 80px;
                height: 80px;
                border-radius: 16px;
            }
            #showcase-root #indexing-overlay h3 {
                font-size: 1.5rem;
            }
            #showcase-root .chat-message {
                margin-bottom: 12px;
            }

            #showcase-root .chat-input {
                font-size: 14px;
                padding: 8px 12px;
            }

            #showcase-root .send-button {
                padding: 8px 12px;
                font-size: 14px;
            }
            #showcase-root .document-card {
                padding: 12px;
            }

            #showcase-root .document-card h4 {
                font-size: 11px;
            }

            #showcase-root .document-card p {
                font-size: 10px;
            }
            #showcase-root .confusion-indicator {
                width: 32px;
                height: 32px;
                font-size: 18px;
                top: -20px;
            }
            #showcase-root .step-indicator {
                padding: 12px;
            }

            #showcase-root .step-indicator h3 {
                font-size: 14px;
            }

            #showcase-root .step-indicator p {
                font-size: 12px;
            }
            #showcase-root .info-message,#showcase-root
            .warning-message {
                padding: 8px 12px;
                font-size: 12px;
            }
            #showcase-root .suite-card {
                padding: 12px;
            }

            #showcase-root .suite-card h4 {
                font-size: 13px;
            }

            #showcase-root .suite-card .grid {
                font-size: 10px;
            }
        }
        @media (max-width: 480px) {
            #showcase-root .vector-db-anim {
                width: 64px;
                height: 64px;
                border-radius: 12px;
            }

            #showcase-root #indexing-overlay h3 {
                font-size: 1.25rem;
            }

            #showcase-root .chat-input {
                font-size: 12px;
                padding: 6px 10px;
                rows: 2;
            }

            #showcase-root .send-button {
                padding: 6px 10px;
                font-size: 12px;
            }

            #showcase-root .document-card {
                padding: 8px;
            }

            #showcase-root .document-card h4 {
                font-size: 10px;
            }

            #showcase-root .document-card p {
                font-size: 9px;
            }

            #showcase-root .confusion-indicator {
                width: 28px;
                height: 28px;
                font-size: 16px;
                top: -18px;
            }

            #showcase-root .step-indicator {
                padding: 8px;
            }

            #showcase-root .step-indicator h3 {
                font-size: 12px;
            }

            #showcase-root .step-indicator p {
                font-size: 11px;
            }

            #showcase-root .info-message,#showcase-root
            .warning-message {
                padding: 6px 10px;
                font-size: 11px;
            }

            #showcase-root .suite-card {
                padding: 8px;
            }

            #showcase-root .suite-card h4 {
                font-size: 12px;
            }

            #showcase-root .suite-card .grid {
                font-size: 9px;
            }
        }
        @media (max-height: 600px) and (orientation: landscape) and (max-width: 1023px) {
            #showcase-root .vector-db-anim {
                width: 60px;
                height: 60px;
            }

            #showcase-root #indexing-overlay h3 {
                font-size: 1.125rem;
            }

            #showcase-root .chat-input {
                rows: 2;
            }
        }
