Spaces:
Running
Running
| * { | |
| box-sizing: border-box; | |
| font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; | |
| } | |
| :root { | |
| --primary: #1a2b49; | |
| --accent: #f0b91f; | |
| } | |
| body { | |
| margin: 0; | |
| background: #f3f6ff; | |
| color: #1a2b49; | |
| } | |
| .demo-page { | |
| padding: 20px; | |
| max-width: 920px; | |
| margin: 0 auto; | |
| } | |
| .container { | |
| background: #fff; | |
| border-radius: 16px; | |
| padding: 24px; | |
| margin: 20px auto 0; | |
| box-shadow: 0 8px 24px rgba(0,0,0,0.08); | |
| } | |
| .container h1 { | |
| margin-top: 0; | |
| font-size: 1.7rem; | |
| } | |
| .container p { | |
| color: #3a4665; | |
| line-height: 1.5; | |
| margin-bottom: 12px; | |
| } | |
| .badge { | |
| display: inline-block; | |
| background: #f0b91f; | |
| color: #1a2b49; | |
| padding: 6px 10px; | |
| border-radius: 999px; | |
| font-weight: 700; | |
| margin-bottom: 14px; | |
| } | |
| .steps { | |
| text-align: left; | |
| background: #f9fbff; | |
| border: 1px solid #e7ecf7; | |
| border-radius: 12px; | |
| padding: 14px; | |
| margin-top: 10px; | |
| } | |
| .steps h3 { margin: 0 0 6px; } | |
| .steps li { margin-bottom: 6px; } | |
| /* ============================= */ | |
| /* LAUNCHER */ | |
| /* ============================= */ | |
| .launcher { | |
| position: fixed; | |
| right: 18px; | |
| bottom: 18px; | |
| z-index: 9999; | |
| display: flex; | |
| align-items: center; | |
| background: #fff; | |
| border-radius: 999px; | |
| border: 1px solid #dce3f0; | |
| padding: 8px 12px; | |
| box-shadow: 0 8px 24px rgba(0,0,0,0.18); | |
| } | |
| .launcher-text { | |
| font-size: 0.78rem; | |
| font-weight: 600; | |
| color: #23315f; | |
| margin-right: 6px; | |
| } | |
| .fab-button { | |
| width: 44px; | |
| height: 44px; | |
| border: none; | |
| border-radius: 50%; | |
| background: var(--primary); | |
| color: #fff; | |
| font-size: 1.1rem; | |
| cursor: pointer; | |
| } | |
| /* ============================= */ | |
| /* CHAT CONTAINER */ | |
| /* ============================= */ | |
| .chatbot-container { | |
| position: fixed; | |
| right: 20px; | |
| bottom: 90px; | |
| width: 380px; | |
| height: 560px; | |
| max-width: calc(100vw - 20px); | |
| background: #fff; | |
| border-radius: 20px; | |
| box-shadow: 0 30px 80px rgba(0,0,0,0.25); | |
| display: flex; | |
| flex-direction: column; | |
| overflow: hidden; | |
| opacity: 0; | |
| transform: translateY(20px); | |
| pointer-events: none; | |
| transition: 0.25s ease; | |
| z-index: 10000; | |
| position: fixed; | |
| } | |
| .chatbot-container.open { | |
| opacity: 1; | |
| transform: translateY(0); | |
| pointer-events: auto; | |
| } | |
| /* ============================= */ | |
| /* HEADER */ | |
| /* ============================= */ | |
| .chat-header { | |
| background: linear-gradient(135deg, #1a2b49, #2e4a7d); | |
| color: white; | |
| padding: 14px 16px; | |
| display: flex; | |
| justify-content: space-between; | |
| align-items: center; | |
| } | |
| .chat-header-left { | |
| display: flex; | |
| flex-direction: column; | |
| } | |
| .chat-header-title { | |
| font-size: 15px; | |
| font-weight: 600; | |
| } | |
| .chat-status { | |
| font-size: 12px; | |
| opacity: 0.8; | |
| } | |
| .close-btn { | |
| cursor: pointer; | |
| font-size: 18px; | |
| width: 30px; | |
| height: 30px; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| } | |
| .close-btn:hover { | |
| opacity: 0.7; | |
| } | |
| /* ============================= */ | |
| /* MESSAGES */ | |
| /* ============================= */ | |
| .chat-messages { | |
| flex: 1; | |
| overflow-y: auto; | |
| padding: 16px; | |
| background: #f7f9fc; | |
| display: flex; | |
| flex-direction: column; | |
| gap: 14px; | |
| } | |
| .scroll-bottom { | |
| position: absolute; | |
| right: 14px; | |
| bottom: 75px; | |
| width: 36px; | |
| height: 36px; | |
| border: none; | |
| border-radius: 50%; | |
| background: #1a2b49; | |
| color: #fff; | |
| font-size: 16px; | |
| box-shadow: 0 4px 18px rgba(0,0,0,0.2); | |
| cursor: pointer; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| z-index: 999; | |
| } | |
| .scroll-bottom.hidden { | |
| display: none; | |
| } | |
| .scroll-bottom:hover { | |
| background: #243f72; | |
| } | |
| .suggestions-wrapper { | |
| display: flex; | |
| flex-direction: column; | |
| gap: 8px; | |
| } | |
| .welcome-message { | |
| background: #fff; | |
| border: 1px solid #e5eaf2; | |
| padding: 16px; | |
| border-radius: 14px; | |
| box-shadow: 0 2px 6px rgba(0,0,0,0.04); | |
| line-height: 1.45; | |
| margin-bottom: 4px; | |
| } | |
| .suggestion-divider { | |
| font-size: 12px; | |
| color: #5c637a; | |
| font-weight: 600; | |
| letter-spacing: 0.2px; | |
| text-transform: uppercase; | |
| margin: 0; | |
| } | |
| .suggestion-btn { | |
| padding: 12px; | |
| border-radius: 12px; | |
| border: 1px solid #e2e8f0; | |
| background: white; | |
| font-size: 14px; | |
| cursor: pointer; | |
| text-align: left; | |
| } | |
| .suggestion-btn:hover { | |
| background: #eef3ff; | |
| } | |
| /* ============================= */ | |
| /* BUBBLES */ | |
| /* ============================= */ | |
| .message { | |
| display: flex; | |
| } | |
| .message.user { | |
| justify-content: flex-end; | |
| } | |
| .bubble { | |
| max-width: 75%; | |
| padding: 12px 14px; | |
| border-radius: 16px; | |
| font-size: 14.5px; | |
| line-height: 1.6; | |
| } | |
| .user .bubble { | |
| background: #dbe7ff; | |
| } | |
| .bot .bubble { | |
| background: #fff; | |
| border: 1px solid #e2e8f0; | |
| } | |
| /* ============================= */ | |
| /* INPUT */ | |
| /* ============================= */ | |
| .chat-form { | |
| display: flex; | |
| padding: 12px; | |
| border-top: 1px solid #eee; | |
| background: #fff; | |
| } | |
| #user-input { | |
| flex: 1; | |
| padding: 12px 14px; | |
| border-radius: 22px; | |
| border: 1px solid #ddd; | |
| font-size: 14px; | |
| } | |
| .send { | |
| margin-left: 8px; | |
| padding: 10px 16px; | |
| background: var(--accent); | |
| border: none; | |
| border-radius: 20px; | |
| cursor: pointer; | |
| font-weight: 600; | |
| } | |
| /* ============================= */ | |
| /* TYPING */ | |
| /* ============================= */ | |
| .typing-indicator { | |
| font-size: 13px; | |
| padding: 6px 12px; | |
| color: #666; | |
| } | |
| .hidden { | |
| display: none; | |
| } | |
| /* ============================= */ | |
| /* 📱 RESPONSIVE */ | |
| /* ============================= */ | |
| /* Tablet */ | |
| @media (max-width: 768px) { | |
| .chatbot-container { | |
| width: 90%; | |
| right: 5%; | |
| left: auto; | |
| bottom: 80px; | |
| height: 75vh; | |
| border-radius: 16px; | |
| } | |
| } | |
| /* Mobile (widget style, NOT fullscreen) */ | |
| @media (max-width: 480px) { | |
| .demo-page .container { padding-top: 70px; } | |
| .chatbot-container { | |
| width: calc(100% - 20px); /* margin both sides */ | |
| right: 10px; | |
| left: 10px; | |
| bottom: 85px; | |
| height: 72vh; /* not full screen */ | |
| border-radius: 18px; | |
| } | |
| .chat-header { | |
| padding: 12px; | |
| } | |
| .chat-messages { | |
| padding: 12px; | |
| } | |
| .bubble { | |
| max-width: 85%; | |
| font-size: 14px; | |
| } | |
| .launcher { | |
| right: 12px; | |
| bottom: 12px; | |
| } | |
| } |