Spaces:
Running
Running
/* style.css */ | |
/* Base Styles */ | |
* { | |
box-sizing: border-box; | |
margin: 0; | |
padding: 0; | |
} | |
body { | |
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; | |
background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%); | |
color: #333; | |
line-height: 1.6; | |
padding: 20px; | |
min-height: 100vh; | |
} | |
.chat-container { | |
max-width: 800px; | |
margin: 0 auto; | |
background: white; | |
border-radius: 12px; | |
box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1); | |
overflow: hidden; | |
display: flex; | |
flex-direction: column; | |
height: 90vh; | |
} | |
/* Header Styles */ | |
header { | |
background: #4a6fa5; | |
color: white; | |
padding: 20px; | |
text-align: center; | |
} | |
header h1 { | |
font-size: 1.8rem; | |
margin-bottom: 8px; | |
} | |
header p { | |
font-size: 1rem; | |
opacity: 0.9; | |
} | |
/* Chat History Styles */ | |
.chat-history { | |
flex: 1; | |
overflow-y: auto; | |
padding: 20px; | |
background: #f9f9f9; | |
display: flex; | |
flex-direction: column; | |
gap: 15px; | |
} | |
.chat-message { | |
padding: 12px 16px; | |
border-radius: 18px; | |
max-width: 80%; | |
word-wrap: break-word; | |
animation: fadeIn 0.3s ease-in-out; | |
} | |
.chat-message.user { | |
background: #e3f2fd; | |
align-self: flex-end; | |
border-bottom-right-radius: 4px; | |
} | |
.chat-message.assistant { | |
background: #f5f5f5; | |
border: 1px solid #ddd; | |
align-self: flex-start; | |
border-bottom-left-radius: 4px; | |
} | |
.chat-message.system { | |
background: #fff8e1; | |
align-self: center; | |
font-size: 0.9rem; | |
text-align: center; | |
max-width: 90%; | |
border-radius: 8px; | |
} | |
.chat-message.error { | |
background: #ffebee; | |
align-self: center; | |
color: #c62828; | |
font-size: 0.9rem; | |
text-align: center; | |
max-width: 90%; | |
border-radius: 8px; | |
} | |
/* Input Area Styles */ | |
.input-area { | |
display: flex; | |
padding: 20px; | |
background: white; | |
border-top: 1px solid #eee; | |
gap: 10px; | |
} | |
#user-input { | |
flex: 1; | |
padding: 12px 15px; | |
border: 1px solid #ddd; | |
border-radius: 24px; | |
resize: none; | |
font-family: inherit; | |
font-size: 1rem; | |
outline: none; | |
transition: border-color 0.3s; | |
} | |
#user-input:focus { | |
border-color: #4a6fa5; | |
} | |
#send-button { | |
padding: 12px 25px; | |
background: #4a6fa5; | |
color: white; | |
border: none; | |
border-radius: 24px; | |
cursor: pointer; | |
font-size: 1rem; | |
font-weight: 600; | |
transition: background 0.3s; | |
align-self: flex-end; | |
} | |
#send-button:hover { | |
background: #3a5a80; | |
} | |
#send-button:disabled { | |
background: #ccc; | |
cursor: not-allowed; | |
} | |
/* Loader Animation */ | |
.loader { | |
display: inline-block; | |
width: 16px; | |
height: 16px; | |
border: 3px solid rgba(74, 111, 165, 0.2); | |
border-top: 3px solid #4a6fa5; | |
border-radius: 50%; | |
margin-right: 10px; | |
animation: spin 1s linear infinite; | |
} | |
@keyframes spin { | |
0% { transform: rotate(0deg); } | |
100% { transform: rotate(360deg); } | |
} | |
@keyframes fadeIn { | |
from { opacity: 0; transform: translateY(10px); } | |
to { opacity: 1; transform: translateY(0); } | |
} | |
/* Responsive Styles */ | |
@media (max-width: 768px) { | |
body { | |
padding: 10px; | |
} | |
.chat-container { | |
height: 95vh; | |
} | |
header h1 { | |
font-size: 1.5rem; | |
} | |
.chat-history { | |
padding: 15px; | |
} | |
.chat-message { | |
max-width: 90%; | |
} | |
.input-area { | |
padding: 15px; | |
} | |
#send-button { | |
padding: 10px 20px; | |
} | |
} | |
@media (max-width: 480px) { | |
header { | |
padding: 15px; | |
} | |
header h1 { | |
font-size: 1.3rem; | |
} | |
.chat-message { | |
max-width: 95%; | |
} | |
.input-area { | |
flex-direction: column; | |
} | |
#send-button { | |
align-self: stretch; | |
} | |
} |