@charset "UTF-8";

/*
 * Theme  : Neutral
 * Version: 1.0.0
 * Author : hybrid.
 *
 * table or .table
 * .table > .thead | .tbody | .tfoot > .tr > .td
 * .table == default
 * :not .acf-table
 */


/* ============================== FLEX TABLE ============================== */

.table.flex {
	font-size: .875em;
}

.table.flex table {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	overflow-x: auto;
	border-collapse: collapse;
}

.table.flex table tr {
	position: relative;
	display: table-row;
	border: 0;
}

.table.flex table th,
.table.flex table td {
	display: table-cell;
	padding: 1em;
	min-width: 4em;
	margin: 0;
	height: calc(3em + var(--logo-line-height) * 8);
	border: solid calc(var(--logo-line-height) / 4);
}


/* =============== THEAD =============== */

.table.flex table thead {
	position: sticky;
	z-index: 10;
	left: 0;
	background: var(--light-color);
	border-right: solid calc(var(--logo-line-height) / 4);
}

.table.flex table thead tr {
	display: flex;
	flex-direction: column;
}

.table.flex table thead th {
	white-space: nowrap;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}


/* =============== TBODY =============== */

.table.flex table tbody {
	position: relative;
	display: table-row-group;
	border-collapse: separate;
	border-spacing: 0;
}


/* ============================== DEFAULT TABLE ============================== */

/* table > thead + tbody > tr > td ... + tfoot */


/* =============== TABLE =============== */

figure.table {
	display: inline-block;
}

table:not(.acf-table) {
	border-collapse: collapse;
	width: 100%;
	font-size: .75em;
	line-height: 1em;
	padding: 0;
}

table:not(.acf-table) > * {
	display: grid;
	line-height: inherit;
	text-align: center;
	margin: 0;
}


/* =============== TFOOT =============== */

table:not(.acf-table) tfoot {
	font-size: 1.5em;
	font-weight: 500;
	background: var(--light-color);
}


/* =============== TR =============== */

table:not(.acf-table) tr {
	position: relative;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(2em, 1fr));
	align-items: stretch;
	justify-content: space-between;
	gap: 1em;
	padding: 1em;
	border: none;
}

/* Alternate rows */
table:not(.acf-table) tbody tr {
	background: var(--bright-color);
}

table:not(.acf-table) tbody tr:nth-child(even) {
	background: var(--light-color);
}


/* =============== TD =============== */

table:not(.acf-table) td {
	flex-grow: 1;
	flex-basis: 100%;
	padding: 0;
	margin: 0;
	position: relative;
	display: inline-flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 1em;
}

table:not(.acf-table) td.large {
	flex-grow: 2;
	flex-basis: 200%;
}

table:not(.acf-table) td > * {
	margin: 0;
}


/* =============== OPTIONS =============== */

table:not(.acf-table) td.is-align-left {
	justify-content: flex-start;
}

table:not(.acf-table) td .title {
	text-align: left;
}


/* ============================== WP TABLE ============================== */

/* WIP */

.table table {
	table-layout: fixed;
	border: solid var(--logo-line-height);
}

.table table tr {
	gap: 0;
	padding: 0;
}

.table table tbody tr:last-child {}

.table table th,
.table table td {
	padding: 1em;
}

.table table th,
.table table td {}

.table table th:last-child,
.table table td:last-child {}


/* ============================== ACCESSIBILITY ============================== */

table caption {
	position: absolute;
	opacity: 0;
	visibility: hidden;
}