NishithP2004's picture
Upload folder using huggingface_hub
24a6592 verified
:root {
color-scheme: dark;
--bg: #0a0d14;
--surface: #111422;
--border: rgba(255, 255, 255, 0.08);
--text: #f8fbff;
--muted: rgba(248, 251, 255, 0.7);
--cyan: #12c2e9;
--violet: #c471ed;
--rose: #f64f59;
--ring: rgba(18, 194, 233, 0.35);
/* Fixed chart area — must stay px-based so Chart.js does not grow the layout */
--chart-h: 240px;
}
*,
*::before,
*::after {
box-sizing: border-box;
}
body {
margin: 0;
min-height: 100dvh;
font-family: "Inter", system-ui, -apple-system, sans-serif;
color: var(--text);
background: var(--bg);
background-image:
radial-gradient(ellipse 80% 50% at 20% 0%, rgba(18, 194, 233, 0.12), transparent 50%),
radial-gradient(ellipse 70% 40% at 100% 20%, rgba(196, 113, 237, 0.1), transparent 45%),
linear-gradient(180deg, #0a0d14, #101525 60%, #0a0d14);
line-height: 1.5;
}
button,
input,
textarea {
font: inherit;
}
a {
color: var(--cyan);
}
.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;
}
.skip-link {
position: absolute;
left: 12px;
top: 12px;
z-index: 10;
padding: 8px 14px;
background: var(--surface);
border: 1px solid var(--border);
border-radius: 8px;
color: var(--text);
text-decoration: none;
transform: translateY(-200%);
transition: transform 0.2s;
}
.skip-link:focus {
transform: translateY(0);
}
.site-header {
padding: 48px 20px 24px;
text-align: center;
border-bottom: 1px solid var(--border);
}
.site-header__inner {
max-width: 720px;
margin: 0 auto;
}
.eyebrow {
margin: 0 0 8px;
font-size: 0.7rem;
font-weight: 700;
letter-spacing: 0.16em;
text-transform: uppercase;
color: var(--muted);
}
h1 {
margin: 0;
font-size: clamp(2rem, 6vw, 3.25rem);
font-weight: 800;
letter-spacing: -0.06em;
line-height: 1.1;
background: linear-gradient(100deg, var(--cyan), var(--violet), var(--rose));
-webkit-background-clip: text;
background-clip: text;
color: transparent;
}
.tagline {
margin: 16px 0 0;
color: var(--muted);
font-size: 1rem;
line-height: 1.65;
}
.layout {
width: min(1100px, 100% - 32px);
margin: 0 auto;
padding: 24px 0 64px;
display: flex;
flex-direction: column;
gap: 20px;
}
.workspace-tabs {
display: flex;
gap: 10px;
}
.workspace-tab {
cursor: pointer;
border: 1px solid var(--border);
border-radius: 999px;
padding: 8px 14px;
color: var(--text);
background: rgba(255, 255, 255, 0.05);
font-weight: 600;
}
.workspace-tab.is-active {
background: linear-gradient(135deg, rgba(18, 194, 233, 0.22), rgba(196, 113, 237, 0.22));
border-color: rgba(255, 255, 255, 0.16);
}
.workspace-panel {
display: flex;
flex-direction: column;
gap: 20px;
}
.workspace-panel[hidden] {
display: none;
}
.panel {
background: var(--surface);
border: 1px solid var(--border);
border-radius: 14px;
padding: 20px 22px;
box-shadow: 0 12px 40px rgba(0, 0, 0, 0.25);
min-width: 0; /* prevent grid/flex overflow */
}
.panel h2 {
margin: 0 0 4px;
font-size: 1.05rem;
font-weight: 700;
letter-spacing: -0.02em;
}
.panel__sub {
margin: 0 0 16px;
font-size: 0.8rem;
color: var(--muted);
}
.train-form__row {
display: grid;
grid-template-columns: 1fr minmax(7rem, 9rem) auto;
gap: 14px;
align-items: end;
}
.field {
display: flex;
flex-direction: column;
gap: 6px;
min-width: 0;
}
.field label {
font-size: 0.7rem;
font-weight: 600;
letter-spacing: 0.06em;
text-transform: uppercase;
color: var(--muted);
}
input,
textarea {
width: 100%;
color: var(--text);
background: rgba(255, 255, 255, 0.05);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 10px;
padding: 10px 12px;
outline: none;
transition: border-color 0.15s, box-shadow 0.15s;
}
input:focus,
textarea:focus {
border-color: rgba(18, 194, 233, 0.5);
box-shadow: 0 0 0 3px var(--ring);
}
.btn {
cursor: pointer;
border: 1px solid var(--border);
border-radius: 999px;
padding: 10px 18px;
font-weight: 700;
color: var(--text);
background: rgba(255, 255, 255, 0.06);
white-space: nowrap;
transition: filter 0.15s, opacity 0.15s;
}
.btn:hover:not(:disabled) {
filter: brightness(1.1);
}
.btn:disabled {
cursor: not-allowed;
opacity: 0.55;
}
.btn--primary {
background: linear-gradient(135deg, rgba(18, 194, 233, 0.25), rgba(196, 113, 237, 0.25));
border-color: rgba(255, 255, 255, 0.12);
}
.status {
margin: 16px 0 0;
font-size: 0.9rem;
color: var(--muted);
}
.metric-strip {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 12px;
margin: 20px 0 0;
padding: 0;
list-style: none;
}
.metric-strip li {
display: flex;
flex-direction: column;
gap: 4px;
padding: 12px 14px;
background: rgba(0, 0, 0, 0.2);
border: 1px solid rgba(255, 255, 255, 0.05);
border-radius: 10px;
min-width: 0;
}
.metric-strip span {
font-size: 0.68rem;
font-weight: 600;
letter-spacing: 0.08em;
text-transform: uppercase;
color: var(--muted);
}
.metric-strip strong {
font-size: clamp(1.4rem, 3.5vw, 2rem);
font-weight: 800;
letter-spacing: -0.04em;
line-height: 1.1;
}
.log-stream__body {
margin: 0;
min-height: 140px;
max-height: 260px;
padding: 12px 14px;
border-radius: 10px;
background: rgba(0, 0, 0, 0.25);
border: 1px solid rgba(255, 255, 255, 0.06);
color: rgba(248, 251, 255, 0.88);
font-size: 0.78rem;
line-height: 1.45;
overflow: auto;
white-space: pre-wrap;
word-break: break-word;
}
.stage-tester__controls {
display: flex;
align-items: center;
gap: 12px;
margin-bottom: 14px;
}
.stage-tester__form {
display: grid;
gap: 12px;
}
.stage-tester__buttons {
display: flex;
gap: 10px;
}
#tester-auto-prompt {
min-height: 72px;
resize: vertical;
}
/* Charts: fixed height container — this stops runaway vertical growth */
.charts__grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px;
margin-top: 4px;
}
.chart-tile {
display: flex;
flex-direction: column;
min-width: 0;
min-height: 0;
}
.chart-tile__head h3 {
margin: 0 0 2px;
font-size: 0.85rem;
font-weight: 700;
letter-spacing: -0.02em;
}
.chart-tile__head p {
margin: 0;
font-size: 0.75rem;
color: var(--muted);
}
.chart-surface {
position: relative;
width: 100%;
height: var(--chart-h);
max-height: var(--chart-h);
min-height: var(--chart-h);
margin-top: 10px;
overflow: hidden;
border-radius: 10px;
background: rgba(0, 0, 0, 0.2);
border: 1px solid rgba(255, 255, 255, 0.04);
flex-shrink: 0;
contain: layout style;
}
/* Chart.js wraps the canvas; lock all nested layout to the fixed box */
.chart-surface > *,
.chart-surface > div {
position: relative !important;
width: 100% !important;
height: 100% !important;
max-height: var(--chart-h) !important;
}
.chart-surface canvas {
display: block;
width: 100% !important;
height: 100% !important;
max-width: 100%;
max-height: var(--chart-h) !important;
}
.meters {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
}
.meter {
display: flex;
flex-direction: column;
gap: 6px;
}
.meter > span {
font-size: 0.65rem;
font-weight: 600;
letter-spacing: 0.1em;
text-transform: uppercase;
color: var(--muted);
}
.meter__track {
height: 8px;
border-radius: 999px;
background: rgba(255, 255, 255, 0.08);
overflow: hidden;
}
.meter__fill {
height: 100%;
width: 0%;
border-radius: inherit;
background: linear-gradient(90deg, var(--cyan), var(--violet));
transition: width 0.2s ease;
}
.meter__fill--danger {
background: linear-gradient(90deg, var(--violet), var(--rose));
}
.meter strong {
font-size: 1.2rem;
font-weight: 700;
}
.chat {
display: flex;
flex-direction: column;
gap: 10px;
}
.chat textarea {
min-height: 100px;
resize: vertical;
max-height: 320px;
}
.chat__meta {
margin: 12px 0 8px;
font-size: 0.85rem;
color: var(--muted);
}
.chat__out {
min-height: 100px;
padding: 16px 18px;
border-radius: 10px;
background: rgba(0, 0, 0, 0.25);
border: 1px solid rgba(255, 255, 255, 0.06);
color: rgba(248, 251, 255, 0.9);
line-height: 1.65;
overflow: auto;
max-height: 60dvh;
}
.prose h1,
.prose h2,
.prose h3 {
margin: 0.75em 0 0.35em;
letter-spacing: -0.03em;
}
.prose :first-child {
margin-top: 0;
}
.prose code,
.prose pre {
color: #c7f7ff;
}
@media (max-width: 800px) {
.train-form__row {
grid-template-columns: 1fr;
}
.btn {
justify-self: start;
width: fit-content;
}
.metric-strip,
.charts__grid,
.meters {
grid-template-columns: 1fr;
}
}
@media (max-width: 480px) {
:root {
--chart-h: 200px;
}
}