Varshithdharmajv's picture
Upload theme.css with huggingface_hub
a73fb25 verified
/* MVM² Senior UI Design System - Linear/Vercel Inspired */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap');
:root {
--bg-color: #0f172a;
--card-bg: rgba(30, 41, 59, 0.7);
--primary: #6366f1;
--primary-glow: rgba(99, 102, 241, 0.3);
--success: #10b981;
--success-glow: rgba(16, 185, 129, 0.2);
--warning: #f59e0b;
--warning-glow: rgba(245, 158, 11, 0.2);
--border: rgba(255, 255, 255, 0.1);
--text-main: #f8f9fa;
--text-muted: #94a3b8;
}
body, .gradio-container {
background-color: var(--bg-color) !important;
color: var(--text-main) !important;
font-family: 'Inter', sans-serif !important;
}
/* Glassmorphism Cards */
.glass-card {
background: var(--card-bg);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
border: 1px solid var(--border);
border-radius: 16px;
padding: 24px;
transition: all 0.3s ease;
}
.glass-card:hover {
border-color: var(--primary);
box-shadow: 0 0 20px var(--primary-glow);
}
/* Typography Enhancements */
h1 { font-weight: 700; letter-spacing: -0.025em; color: #fff; }
h2 { font-weight: 600; color: var(--text-main); }
.monospace { font-family: 'JetBrains Mono', monospace !important; font-size: 0.9em; }
/* Custom Accordion Styling */
.reasoning-step {
margin-bottom: 8px;
padding: 12px;
border-radius: 8px;
background: rgba(255, 255, 255, 0.03);
border-left: 4px solid var(--text-muted);
transition: transform 0.2s ease;
}
.step-valid {
border-left-color: var(--success);
background: var(--success-glow);
box-shadow: inset 0 0 10px rgba(16, 185, 129, 0.1);
}
.step-warning {
border-left-color: var(--warning);
background: var(--warning-glow);
}
/* Animated Gauges */
.gauge-container {
display: flex;
flex-direction: column;
align-items: center;
gap: 12px;
}
.circle-bg { fill: none; stroke: rgba(255,255,255,0.05); stroke-width: 8; }
.circle-progress {
fill: none;
stroke-width: 8;
stroke-linecap: round;
transition: stroke-dashoffset 1s ease-in-out;
}
@keyframes dash {
from { stroke-dashoffset: 251.2; }
}
/* Signal Intel Panel */
.signal-panel {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
margin-top: 20px;
}
/* Download Button Animation */
.download-btn {
background: linear-gradient(135deg, var(--primary) 0%, #4338ca 100%) !important;
border: none !important;
color: white !important;
font-weight: 600 !important;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.download-btn:hover {
transform: translateY(-2px);
box-shadow: 0 10px 25px -5px var(--primary-glow);
filter: brightness(1.1);
}
/* Preprocessing Preview */
.preview-img img {
border-radius: 12px;
border: 1px solid var(--border);
filter: drop-shadow(0 4px 6px rgba(0,0,0,0.3));
}
.status-box {
margin-top: 20px !important;
border-left: 4px solid var(--primary) !important;
}
/* Architecture Flow Animations */
.flow-line {
stroke-dasharray: 1000;
stroke-dashoffset: 1000;
animation: none;
}
.active-pulse {
stroke-dashoffset: 0;
animation: pulse-flow 2s infinite linear;
stroke: var(--primary) !important;
opacity: 1;
}
@keyframes pulse-flow {
0% { stroke-dashoffset: 1000; opacity: 0.3; }
50% { opacity: 1; }
100% { stroke-dashoffset: 0; opacity: 0.3; }
}
.thinking circle {
animation: thinking-pulse 1.5s infinite ease-in-out;
}
@keyframes thinking-pulse {
0%, 100% { transform: scale(1); opacity: 0.8; }
50% { transform: scale(1.1); opacity: 1; filter: brightness(1.2); }
}
.thinking {
transform-origin: 450px 175px;
}
/* Gradio Overrides */
.stButton button { border-radius: 10px !important; }
.stMarkdown { color: var(--text-main) !important; }
input, textarea {
background: rgba(15, 23, 42, 0.6) !important;
border: 1px solid var(--border) !important;
color: white !important;
border-radius: 8px !important;
}
input:focus, textarea:focus { border-color: var(--primary) !important; }
/* Responsive Adjustments */
@media (max-width: 768px) {
.signal-panel { grid-template-columns: 1fr; }
}