Jump to content
Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Template:Infobox tournament/styles.css: Difference between revisions

Template page
m Build reusable tournament data and rendering system
m Build reusable tournament data and rendering system
Line 1: Line 1:
.loka-infobox.loka-infobox--wide {
width: 400px;
}
.loka-tournament-columns {
.loka-tournament-columns {
display: grid;
display: grid;
Line 288: Line 292:
   as one continuous block once stacked. */
   as one continuous block once stacked. */
@media (max-width: 600px) {
@media (max-width: 600px) {
.loka-infobox.loka-infobox--wide {
width: 100%;
max-width: 100%;
}
.loka-tournament-columns {
.loka-tournament-columns {
grid-template-columns: 1fr;
grid-template-columns: 1fr;

Revision as of 00:13, 19 August 2026

.loka-infobox.loka-infobox--wide {
	width: 400px;
}

.loka-tournament-columns {
	display: grid;
	grid-template-columns: 1fr 1fr;
}

.loka-tournament-details {
	padding: .5em;
}

.loka-tournament-col-heading {
	font-size: .7em;
	font-weight: 700;
	color: #f0cf8e;
	text-transform: uppercase;
	letter-spacing: .04em;
}

.loka-tournament-details .loka-tournament-col-heading {
	margin-bottom: .45em;
}

/* Single column, not 2 -- side by side each tile only got ~half the
   Details column's own width (itself already half the box), so anything
   longer than a short word (a full town name, a full written-out date)
   wrapped awkwardly. Stacked, each tile gets the Details column's full
   width instead. */
.loka-tournament-details-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: .45em;
}

.loka-tournament-detail-label {
	display: block;
	font-size: .68em;
	opacity: .65;
	text-transform: uppercase;
	letter-spacing: .03em;
	margin-bottom: .1em;
}

.loka-tournament-detail-value {
	display: block;
	font-size: .85em;
	word-break: break-word;
}

.loka-tournament-runners-tile {
	grid-column: 1 / -1;
	margin-top: .45em;
}

.loka-podium-row {
	display: flex;
	align-items: center;
	gap: .5em;
	padding: .4em .5em;
}

/* Without this the text block only ever shrink-wraps to its own content,
   leaving the rest of the row's width as visible dead space on the right
   (worse the shorter the team/player name) -- stretching it to fill the
   row means that space goes to normal left-aligned text instead. */
.loka-podium-info {
	flex: 1;
	min-width: 0;
}

.loka-podium-row img {
	image-rendering: pixelated;
}

.loka-podium-label {
	font-size: .7em;
	font-weight: 700;
	color: #f0cf8e;
	text-transform: uppercase;
	letter-spacing: .04em;
}

.loka-podium-team {
	font-weight: 600;
}

.loka-podium-single {
	font-weight: normal;
}

.loka-podium-info .loka-hlist {
	font-size: .82em;
	font-weight: normal;
	opacity: .72;
}

.loka-championship {
	display: flex;
	align-items: center;
	gap: .5em;
	margin: 0;
	padding: .35em .5em;
	text-align: left;
}

.loka-championship-info {
	flex: 1;
	min-width: 0;
}

.loka-championship > img {
	image-rendering: pixelated;
}

.loka-championship-heading {
	display: block;
	color: #f0cf8e;
	font-size: .7em;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.loka-championship-name {
	display: block;
	font-size: .84em;
	font-weight: normal;
	overflow-wrap: anywhere;
}

.loka-championship-status {
	display: block;
	min-width: 0;
	margin-top: .08em;
	font-size: .64em;
	letter-spacing: .03em;
	opacity: .72;
	text-transform: uppercase;
	white-space: normal;
}

.loka-championship-status--no-show {
	color: #e5b0a8;
	white-space: normal;
}

.loka-championship-previous {
	display: block;
	margin-top: .16em;
	font-size: .64em;
	opacity: .68;
}

.loka-podium-disclaimer {
	font-size: .7em;
	font-style: italic;
	opacity: .6;
	text-align: center;
	padding: .25em .6em .4em;
}

/* Small centred flourish under the disclaimer -- deliberately full colour
   (not muted like the disclaimer text itself) so it reads as a closing
   accent rather than more faded text. Inset from the sides rather than a
   full-width rule, since the box no longer uses full dividers anywhere
   else. Deliberately NOT repeated under the chronology header bar --
   there, it sat visually between the heading and the current tournament's
   own name in the pane below, reading as an odd divider between two
   things that belong together rather than a closing accent. */
.loka-podium-disclaimer::after {
	content: "";
	display: block;
	width: 48px;
	height: 1px;
	margin: .35em auto 0;
	background: #f0cf8e;
}

/* Plain row, not a solid coloured bar, no dividers above or below --
   fully matches the same "eyebrow" label used for Tournament Details,
   Winning Team, and Winner/2nd Place/3rd Place (loka-tournament-col-heading
   / loka-podium-label): identical font-size, weight, case, letter-spacing
   and colour on all three (title and both side labels alike), so the
   whole set reads as one consistent family instead of some being bold
   and gold while others are smaller and muted. */
.loka-chrono-header {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	align-items: center;
	padding: .35em 0;
}

.loka-chrono-header-title,
.loka-chrono-header-side {
	font-size: .7em;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .04em;
	color: #f0cf8e;
	text-align: center;
	white-space: nowrap;
}

.loka-chrono-header-side--prev {
	grid-column: 1;
}

.loka-chrono-header-side--next {
	grid-column: 3;
}

/* The side label's own column now runs edge-to-edge with the infobox (no
   header padding, see .loka-chrono-header), so an arrow positioned off the
   *column's* edge would land outside .loka-infobox's overflow:hidden and
   get clipped invisible. Instead the arrow anchors to this inner,
   shrink-wrapped text span -- it sits just outside the actual glyphs,
   safely inside the box, and (being outside the centred string itself)
   never shifts where "Previous"/"Next" centres. */
.loka-chrono-header-side-text {
	position: relative;
	display: inline-block;
}

.loka-chrono-header-side--prev .loka-chrono-header-side-text::before {
	content: "\2190";
	position: absolute;
	right: 100%;
	margin-right: .35em;
}

.loka-chrono-header-side--next .loka-chrono-header-side-text::after {
	content: "\2192";
	position: absolute;
	left: 100%;
	margin-left: .35em;
}

/* Pulled out of the grid entirely and centred against the whole header's
   width instead of being confined to column 2's share of it -- lets a
   wide, non-wrapping title extend past where column 2 alone would end
   without affecting the side labels' position (they're independently
   pinned to columns 1/3 above) or the grid's own track sizing. */
.loka-chrono-header-title {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}

.loka-chrono-grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
}

.loka-chrono-pane {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: .4em .35em;
	text-align: center;
	font-size: .78em;
}

.loka-chrono-title--current {
	font-weight: 700;
}

.loka-chrono-year {
	font-weight: normal;
	opacity: .75;
	font-size: .9em;
	margin-top: .2em;
}

.loka-chrono-tba {
	color: rgba(255, 255, 255, .4);
}

.loka-chrono-empty {
	color: rgba(255, 255, 255, .4);
	font-style: italic;
}

/* Below this width the box itself has already gone full-width and
   unfloated (see Template:Infobox/styles.css), but Details|Results side
   by side would still squeeze each into an unreadably narrow column, so
   they stack instead -- the extra top margin (on top of Details' own
   bottom padding and Results' own top padding) keeps the two from reading
   as one continuous block once stacked. */
@media (max-width: 600px) {
	.loka-infobox.loka-infobox--wide {
		width: 100%;
		max-width: 100%;
	}

	.loka-tournament-columns {
		grid-template-columns: 1fr;
	}

	.loka-tournament-results {
		margin-top: .3em;
	}
}

/* The light gold accent (#f0cf8e) and the semi-transparent white "TBA"/
   "--" text both assume a dark box background to show up against -- now
   that .loka-infobox switches to a light card in light mode (see
   Template:Infobox/styles.css), these need darker equivalents of their
   own or they'd wash out to near-invisible pastel/white-on-cream. Reuses
   the same darker amber (#9c6b2e) Template:Biome already uses for its own
   light-card label variant, for a consistent look. Doesn't touch the
   header photo's own overlay text (name/type, "Winning Team" etc. sitting
   directly on the photo) -- that has its own permanent dark scrim/shadow
   independent of page theme, so it's already fine in both modes. */
@media (prefers-color-scheme: light) {
	.loka-tournament-col-heading,
	.loka-podium-label,
	.loka-championship-heading,
	.loka-chrono-header-title,
	.loka-chrono-header-side {
		color: #9c6b2e;
	}

	.loka-championship-status--no-show {
		color: #8f3028;
	}

	.loka-chrono-tba,
	.loka-chrono-empty {
		color: rgba(0, 0, 0, .35);
	}

	.loka-podium-disclaimer::after {
		background: #9c6b2e;
	}
}