Kossistant-1 / style.css
Yuchan5386's picture
Create style.css
b093db4 verified
/* Kossistant 스타일 CSS */
* {
box-sizing: border-box;
-webkit-tap-highlight-color: transparent;
}
body {
margin: 0;
padding: 0;
font-family: 'Pretendard', 'Segoe UI', 'Apple SD Gothic Neo', sans-serif;
background-color: #121212;
color: #FFF;
overflow-x: hidden;
transition: background-color 0.3s ease;
}
.gradio-container {
background-color: #121212 !important;
color: white;
}
h1 {
text-align: center;
font-size: 2rem;
color: #00f7ff;
margin: 30px 0;
text-transform: uppercase;
letter-spacing: 1px;
animation: fadeIn 1.5s ease-in-out;
}
.chat-wrapper {
background-color: #1A1A1A;
border-radius: 20px;
padding: 30px 35px;
max-width: 768px;
margin: auto;
box-shadow: 0 0 20px rgba(0,0,0,0.3);
height: 75vh;
display: flex;
flex-direction: column;
justify-content: space-between;
transition: background-color 0.3s ease, box-shadow 0.3s ease;
}
.chat-wrapper:hover {
box-shadow: 0 0 30px rgba(0,0,0,0.5);
}
.chat-container {
overflow-y: auto;
flex-grow: 1;
padding-right: 10px;
margin-bottom: 30px;
scrollbar-width: thin;
scrollbar-color: #444 #1A1A1A;
}
.chat-container::-webkit-scrollbar {
width: 6px;
}
.chat-container::-webkit-scrollbar-thumb {
background-color: #444;
border-radius: 3px;
}
.message {
margin-bottom: 14px;
display: flex;
animation: slideIn 0.3s ease-in-out;
flex-direction: column;
gap: 8px;
}
.user {
justify-content: flex-end;
}
.bot {
justify-content: flex-start;
}
.bubble {
max-width: 80%;
padding: 12px 16px;
border-radius: 20px;
line-height: 1.6;
font-size: 0.98rem;
position: relative;
animation: fadeIn 0.5s ease-in-out;
word-break: break-word;
white-space: pre-wrap;
transition: background-color 0.3s ease, box-shadow 0.3s ease;
}
.user-bubble {
background-color: #00796B;
color: white;
border-bottom-right-radius: 0;
align-self: flex-end;
box-shadow: 0 4px 8px rgba(0, 121, 107, 0.3);
padding: 14px 18px;
border-radius: 18px;
transition: all 0.3s ease-in-out;
}
.user-bubble:after {
content: '';
position: absolute;
right: -10px;
top: 10px;
border: 6px solid transparent;
border-left-color: #00796B;
}
.user-bubble:hover {
background-color: #004d40;
transform: scale(1.05);
}
.bot-bubble {
background-color: #2F3136;
color: white;
border-bottom-left-radius: 0;
align-self: flex-start;
box-shadow: 0 4px 8px rgba(255, 255, 255, 0.1);
padding: 14px 18px;
border-radius: 18px;
transition: all 0.3s ease-in-out;
}
.bot-bubble:after {
content: '';
position: absolute;
left: -10px;
top: 10px;
border: 6px solid transparent;
border-right-color: #2F3136;
}
.bot-bubble:hover {
background-color: #1a1a1a;
transform: scale(1.05);
}
textarea, input[type="text"] {
background-color: #2C2C2C !important;
color: white !important;
border: 1px solid #555 !important;
border-radius: 14px !important;
padding: 12px 14px !important;
font-size: 1rem;
width: 100%;
transition: all 0.2s ease-in-out;
}
textarea:focus, input[type="text"]:focus {
outline: none;
border-color: #00f7ff !important;
box-shadow: 0 0 5px #00f7ff55;
}
button {
background-color: #00C896 !important;
color: white !important;
font-weight: bold;
border: none !important;
border-radius: 14px !important;
padding: 12px 18px !important;
font-size: 1rem;
transition: all 0.2s ease-in-out;
}
button:hover {
background-color: #00a67e !important;
transform: scale(1.05);
}
::selection {
background: #00f7ff;
color: #000;
}
@keyframes slideIn {
0% { transform: translateY(10px); opacity: 0; }
100% { transform: translateY(0); opacity: 1; }
}
@keyframes fadeIn {
0% { opacity: 0; }
100% { opacity: 1; }
}
/* gradio 기본 요소 추가 커스터마이징 */
.gradio-textbox input, .gradio-textbox textarea {
background-color: #2C2C2C;
color: white;
border-radius: 14px;
padding: 12px 16px;
border: 1px solid #444;
}
.gradio-textbox input:focus, .gradio-textbox textarea:focus {
border-color: #00f7ff;
outline: none;
box-shadow: 0 0 5px rgba(0, 247, 255, 0.5);
}
.gradio-button {
background-color: #00C896;
color: white;
padding: 12px 18px;
border-radius: 14px;
font-size: 1rem;
transition: all 0.2s ease;
}
.gradio-button:hover {
background-color: #00a67e;
transform: scale(1.05);
}
@media screen and (max-width: 1024px) {
.chat-wrapper {
padding: 20px 25px;
}
.message {
gap: 12px;
}
}
@media screen and (max-width: 768px) {
.chat-wrapper {
padding: 15px 20px;
border-radius: 0;
}
.bubble {
font-size: 0.95rem;
}
.message {
gap: 8px;
}
}