Fraser's picture
Initial backend setup with Gradio
7ac86fa
/* Reset and base styles */
*, *::before, *::after {
box-sizing: border-box;
}
* {
margin: 0;
}
body {
line-height: 1.5;
-webkit-font-smoothing: antialiased;
background: #ffffff;
color: #1a1a1a;
}
img, picture, video, canvas, svg {
display: block;
max-width: 100%;
}
input, button, textarea, select {
font: inherit;
}
p, h1, h2, h3, h4, h5, h6 {
overflow-wrap: break-word;
}
/* Utility classes */
.visually-hidden {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
}
/* Common button styles */
button {
padding: 0.75rem 1.5rem;
border: none;
border-radius: 0.5rem;
cursor: pointer;
font-weight: 500;
transition: all 0.2s ease;
background: #007bff;
color: white;
}
button:hover:not(:disabled) {
background: #0056b3;
transform: translateY(-1px);
}
button:disabled {
background: #9ac7ff;
cursor: not-allowed;
transform: none;
}
/* Form styles */
input[type="text"],
input[type="file"],
select {
padding: 0.75rem;
border: 1px solid #ccc;
border-radius: 0.375rem;
width: 100%;
transition: border-color 0.2s ease;
}
input[type="text"]:focus,
select:focus {
outline: none;
border-color: #007bff;
box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.25);
}
label {
display: block;
margin-bottom: 0.5rem;
font-weight: 600;
color: #333;
}
/* Video styles */
video {
width: 100%;
max-height: 60vh;
border-radius: 0.5rem;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
/* Responsive design */
@media (max-width: 768px) {
body {
font-size: 14px;
}
button {
padding: 0.5rem 1rem;
}
input[type="text"],
input[type="file"],
select {
padding: 0.5rem;
}
}