Horizon / src /pages /TimelineView.css
NKessler's picture
Upload 6270 files
4083225 verified
Raw
History Blame Contribute Delete
3.51 kB
.timeline-view {
position: relative;
background: var(--bg);
overflow: auto;
min-height: 100%;
display: grid;
gap: var(--sp-4);
padding: var(--sp-4);
}
.timeline-view__svg {
width: 100%;
max-width: 100%;
height: auto;
display: block;
}
.timeline-view__loading {
min-height: 200px;
display: grid;
place-items: center;
color: var(--text-muted);
font-size: var(--fs-xs);
letter-spacing: 0.16em;
text-transform: uppercase;
gap: var(--sp-2);
}
/** Chart area when interest has no series; message lives in card header only (avoid duplicate + loading styles). */
.timeline-view__interest-chart-placeholder {
min-height: 160px;
border-top: 1px solid var(--border);
}
.timeline-view__tick {
font-family: var(--font-mono);
font-size: 11px;
fill: var(--text-muted);
letter-spacing: 0.08em;
}
.timeline-view__axis-label {
font-family: var(--font-mono);
font-size: 10px;
fill: var(--text-faint);
letter-spacing: 0.22em;
}
.timeline-view__event {
font-family: var(--font-mono);
font-size: 11px;
fill: var(--accent);
letter-spacing: 0.12em;
text-transform: uppercase;
}
.timeline-view__header {
display: flex;
justify-content: space-between;
align-items: end;
}
.timeline-view__title {
margin: 0;
font-size: clamp(1rem, 1.2vw + 0.8rem, 1.25rem);
letter-spacing: 0.02em;
}
.timeline-card {
border: 1px solid var(--border);
background: color-mix(in srgb, var(--bg-elev) 92%, transparent);
}
.timeline-card__head {
display: flex;
justify-content: space-between;
align-items: end;
gap: var(--sp-3);
padding: var(--sp-3) var(--sp-4) var(--sp-2);
}
.timeline-card__head--controls {
align-items: center;
}
.timeline-card--interest .timeline-card__head {
align-items: flex-start;
}
.timeline-card__subtle--interest {
margin-top: var(--sp-2);
max-width: 52ch;
line-height: 1.45;
letter-spacing: 0.02em;
text-transform: none;
}
.timeline-card__subtle--keywords {
margin-top: var(--sp-1);
text-transform: none;
letter-spacing: 0.03em;
}
.timeline-card__subtle--keywords .label {
margin-right: var(--sp-2);
}
.timeline-card__title {
margin: 0;
font-size: 1rem;
}
.timeline-card__subtle {
margin: 0;
color: var(--text-muted);
font-size: var(--fs-xs);
}
.timeline-controls {
display: flex;
gap: var(--sp-3);
align-items: end;
}
.timeline-controls label {
display: grid;
gap: var(--sp-1);
}
.timeline-controls select {
min-width: 150px;
}
.timeline-legend {
position: static;
z-index: 0;
background: rgba(13, 15, 20, 0.65);
border: 1px solid var(--border);
padding: var(--sp-3) var(--sp-4);
min-width: 220px;
margin: 0 var(--sp-4) var(--sp-3);
}
.timeline-legend__title {
margin-bottom: var(--sp-2);
}
.timeline-legend__bar {
display: grid;
grid-template-columns: repeat(5, 1fr);
height: 8px;
}
.timeline-legend__cell {
height: 100%;
}
.timeline-legend__scale {
display: flex;
justify-content: space-between;
margin-top: var(--sp-1);
font-size: var(--fs-xs);
letter-spacing: 0.14em;
text-transform: uppercase;
color: var(--text-faint);
}
@media (max-width: 900px) {
.timeline-view {
padding: var(--sp-3);
}
.timeline-card__head,
.timeline-card__head--controls {
align-items: start;
flex-direction: column;
}
.timeline-controls {
width: 100%;
}
.timeline-controls label,
.timeline-controls select {
width: 100%;
}
.timeline-legend {
margin-inline: var(--sp-3);
min-width: 0;
}
}