|
|
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&family=Inter:wght@400;500;600;700&display=swap'); |
|
|
|
|
|
body, .gradio-container { |
|
|
background-color: #FFFAEB !important; |
|
|
background-image: |
|
|
linear-gradient(#E9E2CB 1px, transparent 1px), |
|
|
linear-gradient(90deg, #E9E2CB 1px, transparent 1px) !important; |
|
|
background-size: 40px 40px !important; |
|
|
font-family: 'Inter', sans-serif !important; |
|
|
} |
|
|
|
|
|
@keyframes pulse { |
|
|
0%, 100% { opacity: 1; transform: scale(1); } |
|
|
50% { opacity: 0.5; transform: scale(0.8); } |
|
|
} |
|
|
|
|
|
@keyframes blink { |
|
|
0%, 100% { opacity: 1; } |
|
|
50% { opacity: 0; } |
|
|
} |
|
|
|
|
|
@keyframes bounce { |
|
|
0%, 100% { transform: translateY(0); } |
|
|
50% { transform: translateY(-8px); } |
|
|
} |
|
|
|
|
|
.header-card { |
|
|
background: linear-gradient(135deg, #FFFAEB 0%, #FFF0C3 100%); |
|
|
border: 2px solid #E9E2CB; |
|
|
border-top: 4px solid #FF8205; |
|
|
padding: 2rem; |
|
|
margin-bottom: 1.5rem; |
|
|
box-shadow: 0 4px 24px rgba(0,0,0,0.06); |
|
|
} |
|
|
|
|
|
.header-title { |
|
|
font-size: 2rem; |
|
|
font-weight: 700; |
|
|
color: #1E1E1E !important; |
|
|
margin: 0 0 0.5rem 0; |
|
|
letter-spacing: -0.02em; |
|
|
display: flex; |
|
|
align-items: center; |
|
|
gap: 0.75rem; |
|
|
} |
|
|
|
|
|
.header-logo { |
|
|
width: 40px; |
|
|
height: 40px; |
|
|
object-fit: contain; |
|
|
} |
|
|
|
|
|
.header-subtitle { |
|
|
color: #444444 !important; |
|
|
font-size: 1rem; |
|
|
margin: 0; |
|
|
} |
|
|
|
|
|
.transcription-card { |
|
|
background: #FFFAEB !important; |
|
|
border: 2px solid #E9E2CB; |
|
|
box-shadow: 0 8px 32px rgba(0,0,0,0.08); |
|
|
overflow: hidden; |
|
|
min-height: 350px; |
|
|
} |
|
|
|
|
|
.card-header { |
|
|
background: rgba(255,255,255,0.6) !important; |
|
|
border-bottom: 1px solid #E9E2CB; |
|
|
padding: 0.75rem 1rem; |
|
|
display: flex; |
|
|
align-items: center; |
|
|
justify-content: space-between; |
|
|
} |
|
|
|
|
|
.card-header-left { |
|
|
display: flex; |
|
|
align-items: center; |
|
|
gap: 0.75rem; |
|
|
} |
|
|
|
|
|
.card-header-right { |
|
|
display: flex; |
|
|
align-items: center; |
|
|
gap: 1rem; |
|
|
} |
|
|
|
|
|
.card-title { |
|
|
font-size: 0.65rem; |
|
|
font-weight: 700; |
|
|
color: #1E1E1E !important; |
|
|
text-transform: uppercase; |
|
|
letter-spacing: 0.1em; |
|
|
margin: 0; |
|
|
} |
|
|
|
|
|
.voxtral-icon { |
|
|
width: 24px; |
|
|
height: 24px; |
|
|
object-fit: contain; |
|
|
} |
|
|
|
|
|
.wpm-badge { |
|
|
display: inline-flex; |
|
|
align-items: center; |
|
|
gap: 0.4rem; |
|
|
padding: 0.25rem 0.6rem; |
|
|
font-size: 0.6rem; |
|
|
font-weight: 700; |
|
|
text-transform: uppercase; |
|
|
letter-spacing: 0.05em; |
|
|
border-radius: 2px; |
|
|
background: #FFF0C3; |
|
|
color: #1E1E1E !important; |
|
|
border: 1px solid #E9E2CB; |
|
|
font-family: 'JetBrains Mono', monospace; |
|
|
} |
|
|
|
|
|
.status-badge { |
|
|
display: inline-flex; |
|
|
align-items: center; |
|
|
gap: 0.5rem; |
|
|
padding: 0.25rem 0.75rem; |
|
|
font-size: 0.6rem; |
|
|
font-weight: 700; |
|
|
text-transform: uppercase; |
|
|
letter-spacing: 0.08em; |
|
|
border-radius: 2px; |
|
|
} |
|
|
|
|
|
.status-ready { |
|
|
background: #f5f5f5 !important; |
|
|
color: #555555 !important; |
|
|
border: 1px solid #E9E2CB; |
|
|
} |
|
|
|
|
|
.status-connecting, .status-warming { |
|
|
background: rgba(255, 130, 5, 0.15) !important; |
|
|
color: #CC6A04 !important; |
|
|
border: 1px solid #FF8205; |
|
|
} |
|
|
|
|
|
.status-listening { |
|
|
background: rgba(255, 130, 5, 0.2) !important; |
|
|
color: #CC6A04 !important; |
|
|
border: 1px solid #FF8205; |
|
|
} |
|
|
|
|
|
.status-timeout { |
|
|
background: rgba(225, 5, 0, 0.1) !important; |
|
|
color: #B30400 !important; |
|
|
border: 1px solid #E10500; |
|
|
} |
|
|
|
|
|
.status-error { |
|
|
background: rgba(225, 5, 0, 0.1) !important; |
|
|
color: #B30400 !important; |
|
|
border: 1px solid #E10500; |
|
|
} |
|
|
|
|
|
.status-dot { |
|
|
width: 6px; |
|
|
height: 6px; |
|
|
border-radius: 50%; |
|
|
background: currentColor !important; |
|
|
} |
|
|
|
|
|
.status-dot.animate { |
|
|
animation: pulse 1.5s ease-in-out infinite; |
|
|
} |
|
|
|
|
|
.status-dot.fast { |
|
|
animation: pulse 0.8s ease-in-out infinite; |
|
|
} |
|
|
|
|
|
.card-content { |
|
|
padding: 1.5rem; |
|
|
min-height: 250px; |
|
|
position: relative; |
|
|
background-color: #FFFAEB !important; |
|
|
background-image: |
|
|
linear-gradient(rgba(0,0,0,0.02) 1px, transparent 1px), |
|
|
linear-gradient(90deg, rgba(0,0,0,0.02) 1px, transparent 1px); |
|
|
background-size: 20px 20px; |
|
|
} |
|
|
|
|
|
.transcript-text { |
|
|
font-family: 'JetBrains Mono', monospace !important; |
|
|
font-size: 1.1rem !important; |
|
|
line-height: 1.8 !important; |
|
|
color: #000000 !important; |
|
|
white-space: pre-wrap; |
|
|
word-break: break-word; |
|
|
} |
|
|
|
|
|
.transcript-cursor { |
|
|
display: inline-block; |
|
|
width: 10px; |
|
|
height: 20px; |
|
|
background: #FF8205 !important; |
|
|
margin-left: 4px; |
|
|
vertical-align: middle; |
|
|
animation: blink 1s step-end infinite; |
|
|
} |
|
|
|
|
|
.empty-state { |
|
|
display: flex; |
|
|
flex-direction: column; |
|
|
align-items: center; |
|
|
justify-content: center; |
|
|
height: 200px; |
|
|
} |
|
|
|
|
|
.empty-dots { |
|
|
display: flex; |
|
|
gap: 6px; |
|
|
margin-bottom: 1rem; |
|
|
} |
|
|
|
|
|
.empty-dot { |
|
|
width: 8px; |
|
|
height: 8px; |
|
|
border-radius: 50%; |
|
|
background: #FF8205 !important; |
|
|
animation: bounce 1s ease-in-out infinite; |
|
|
} |
|
|
|
|
|
.empty-dot:nth-child(2) { animation-delay: 0.1s; } |
|
|
.empty-dot:nth-child(3) { animation-delay: 0.2s; } |
|
|
|
|
|
.empty-text { |
|
|
font-family: 'JetBrains Mono', monospace !important; |
|
|
font-size: 0.875rem !important; |
|
|
color: #555555 !important; |
|
|
font-style: italic; |
|
|
} |
|
|
|
|
|
.card-footer { |
|
|
background: #fafafa !important; |
|
|
border-top: 1px solid #E9E2CB; |
|
|
padding: 0.5rem 1rem; |
|
|
display: flex; |
|
|
justify-content: space-between; |
|
|
font-family: 'JetBrains Mono', monospace; |
|
|
font-size: 0.65rem; |
|
|
color: #555555 !important; |
|
|
} |
|
|
|
|
|
|
|
|
#audio-input { |
|
|
margin-top: 1rem; |
|
|
} |
|
|
|
|
|
#audio-input button { |
|
|
color: inherit !important; |
|
|
} |
|
|
|
|
|
#audio-input .controls button { |
|
|
background: var(--button-secondary-background-fill) !important; |
|
|
color: var(--button-secondary-text-color) !important; |
|
|
} |
|
|
|
|
|
.clear-btn { |
|
|
background: #E10500 !important; |
|
|
color: #FFFFFF !important; |
|
|
border: none !important; |
|
|
padding: 0.75rem 1.5rem !important; |
|
|
font-weight: 600 !important; |
|
|
text-transform: uppercase !important; |
|
|
letter-spacing: 0.05em !important; |
|
|
font-size: 0.75rem !important; |
|
|
cursor: pointer !important; |
|
|
transition: all 0.2s !important; |
|
|
border-radius: 0 !important; |
|
|
margin-top: 1rem !important; |
|
|
} |
|
|
|
|
|
.clear-btn:hover { |
|
|
background: #B30400 !important; |
|
|
} |
|
|
|
|
|
footer { |
|
|
display: none !important; |
|
|
} |
|
|
|
|
|
.gradio-container .prose { |
|
|
max-width: none !important; |
|
|
} |
|
|
|
|
|
.info-text { |
|
|
font-family: 'JetBrains Mono', monospace !important; |
|
|
font-size: 0.75rem !important; |
|
|
color: #888888 !important; |
|
|
font-style: italic; |
|
|
text-align: center; |
|
|
margin-top: 1rem; |
|
|
} |
|
|
|