mirror of
https://github.com/Sendouc/sendou.ink.git
synced 2026-11-14 08:09:13 -06:00
229 lines
3.8 KiB
CSS
229 lines
3.8 KiB
CSS
.view {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: var(--s-4);
|
|
container-type: inline-size;
|
|
}
|
|
|
|
.title {
|
|
font-size: var(--font-sm);
|
|
font-weight: var(--weight-bold);
|
|
}
|
|
|
|
.fileName {
|
|
font-size: var(--font-2xs);
|
|
color: var(--color-text-high);
|
|
overflow-wrap: anywhere;
|
|
}
|
|
|
|
.games {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: var(--s-2);
|
|
}
|
|
|
|
.gamesSummary {
|
|
margin-inline-start: auto;
|
|
font-size: var(--font-xs);
|
|
font-weight: var(--weight-semi);
|
|
color: var(--color-text-high);
|
|
}
|
|
|
|
.layout {
|
|
display: grid;
|
|
grid-template-areas: "player" "timeline" "events";
|
|
gap: var(--s-2) var(--s-3);
|
|
|
|
@container (min-width: 900px) {
|
|
grid-template-areas: "player events" "timeline .";
|
|
grid-template-columns: minmax(0, 3fr) minmax(22rem, 1fr);
|
|
}
|
|
}
|
|
|
|
.player {
|
|
grid-area: player;
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: var(--s-2);
|
|
min-width: 0;
|
|
}
|
|
|
|
.timeline {
|
|
grid-area: timeline;
|
|
min-width: 0;
|
|
}
|
|
|
|
.stage {
|
|
position: relative;
|
|
}
|
|
|
|
.slot,
|
|
.videoHost {
|
|
width: 100%;
|
|
}
|
|
|
|
.videoHost {
|
|
position: relative;
|
|
}
|
|
|
|
.video {
|
|
display: block;
|
|
width: 100%;
|
|
max-height: 70dvh;
|
|
aspect-ratio: 16 / 9;
|
|
background: #000;
|
|
border-radius: var(--radius-box);
|
|
}
|
|
|
|
.openFile {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: var(--s-3);
|
|
aspect-ratio: 16 / 9;
|
|
padding: var(--s-4);
|
|
border: var(--border-width) dashed var(--color-border);
|
|
border-radius: var(--radius-box);
|
|
font-size: var(--font-sm);
|
|
text-align: center;
|
|
overflow-wrap: anywhere;
|
|
|
|
& p {
|
|
margin: 0;
|
|
}
|
|
}
|
|
|
|
.fileButton {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: var(--s-1-5);
|
|
height: var(--field-size-sm);
|
|
padding: 0 var(--field-padding);
|
|
border: var(--border-width) solid var(--color-fill-accent);
|
|
border-radius: var(--radius-field);
|
|
background: var(--color-fill-accent);
|
|
color: var(--color-fg-on-accent);
|
|
font-size: var(--font-xs);
|
|
font-weight: var(--weight-bold);
|
|
cursor: pointer;
|
|
|
|
& input {
|
|
display: none;
|
|
}
|
|
}
|
|
|
|
.events {
|
|
grid-area: events;
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: var(--s-2);
|
|
min-width: 0;
|
|
|
|
/* as tall as the player and its controls beside it, the list scrolling within */
|
|
@container (min-width: 900px) {
|
|
contain: size;
|
|
}
|
|
}
|
|
|
|
.list {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: var(--s-1);
|
|
max-height: 70dvh;
|
|
margin: 0;
|
|
padding: 0;
|
|
overflow-y: auto;
|
|
overscroll-behavior: contain;
|
|
list-style: none;
|
|
|
|
@container (min-width: 900px) {
|
|
flex: 1 1 0;
|
|
min-height: 12rem;
|
|
max-height: none;
|
|
}
|
|
}
|
|
|
|
.entry {
|
|
display: grid;
|
|
grid-template-columns: minmax(0, 1fr) auto;
|
|
gap: 0 var(--s-2);
|
|
width: 100%;
|
|
padding: var(--s-1-5) var(--s-2);
|
|
border: var(--border-width) solid transparent;
|
|
border-radius: var(--radius-field);
|
|
background-color: var(--color-bg-high);
|
|
color: var(--color-text);
|
|
text-align: start;
|
|
cursor: pointer;
|
|
transition: background-color 0.15s;
|
|
|
|
&:hover {
|
|
background-color: var(--color-bg-higher);
|
|
}
|
|
|
|
&[aria-current="true"] {
|
|
border: var(--border-style-accent);
|
|
background-color: var(--color-bg-higher);
|
|
}
|
|
}
|
|
|
|
.entryType {
|
|
font-size: var(--font-xs);
|
|
font-weight: var(--weight-bold);
|
|
}
|
|
|
|
.entryTime {
|
|
font-size: var(--font-xs);
|
|
font-weight: var(--weight-semi);
|
|
font-variant-numeric: tabular-nums;
|
|
text-align: end;
|
|
}
|
|
|
|
.entryWhere,
|
|
.entryPosition {
|
|
font-size: var(--font-2xs);
|
|
color: var(--color-text-high);
|
|
}
|
|
|
|
.entryPosition {
|
|
font-variant-numeric: tabular-nums;
|
|
text-align: end;
|
|
}
|
|
|
|
.empty {
|
|
margin: 0;
|
|
font-size: var(--font-xs);
|
|
color: var(--color-text-high);
|
|
}
|
|
|
|
.castSide {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: var(--s-1);
|
|
}
|
|
|
|
.castSideHeader {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
align-items: center;
|
|
gap: var(--s-2);
|
|
}
|
|
|
|
.castSideTitle {
|
|
font-size: var(--font-xs);
|
|
font-weight: var(--weight-bold);
|
|
}
|
|
|
|
.castTeam {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: var(--s-1);
|
|
}
|
|
|
|
.castSideNote {
|
|
margin: 0;
|
|
font-size: var(--font-2xs);
|
|
color: var(--color-text-high);
|
|
}
|