/* FLEX TABLE */
.flex-table { display: flex;flex-direction: column;font-size: 20px;	}
.flex-table thead tr, .flex-table tbody tr { display: flex;flex-direction: column;border-bottom: 5px solid #fff; }
.flex-table thead tr:last-child, .flex-table tbody tr:last-child { border-bottom: 0; }
.flex-table thead th, .flex-table tbody td, .flex-table tfoot th { background: #efefef;padding: 1rem 3rem;width: 100%;line-height: 1.4; }
.flex-table thead { border-bottom: 2px solid #bababa; }
.flex-table thead th { background: #d4d4d4;border: 0; }
.flex-table tbody tr td { text-align: left; }
.flex-table.white tbody td { background: #fff; }
.flex-table.blue tbody td, .flex-table.blue tfoot td { background: #d9ecff; }
.flex-table.blue thead th { background: #fff; }
.flex-table.regular thead th, .flex-table.regular tbody td, .flex-table.regular tfoot th { background: initial;padding: 1rem; }
.flex-table.regular tbody td { border: 0; }
.flex-table.regular thead th { background: initial; }
.flex-table.regular thead tr, .flex-table.regular tbody tr { border-bottom: 0; }
.flex-table.table-hover tbody tr:hover { color: unset;background-color: unset; }
.flex-table.table-hover tbody tr:hover td { background-color: rgba(0, 0, 0, 0.15); }
.flex-table.table-hover.white tbody tr:hover td { background-color: rgba(196, 196, 196, 0.15); }
.flex-table.table-rounded tbody tr td { border-radius: 0; }
.flex-table.table-rounded tbody tr td:first-child { border-top-left-radius: 6px;border-top-right-radius: 6px; }
.flex-table.table-rounded tbody tr td:last-child { border-bottom-left-radius: 6px;border-bottom-right-radius: 6px; }
.table.blue tbody td { background: #d9ecff;border: 1px solid rgb(255 255 255); }
.table.blue thead th { border-bottom: 1px solid #fff;border-top: none; }

@media screen and (min-width: 40em) {
	.flex-table tbody tr { display: grid;grid-template-columns: 1fr; }
	.flex-table.table-rounded tbody tr { row-gap: 5px; }
	.flex-table.alt tbody tr { display: grid;grid-template-columns: repeat(2, 1fr);row-gap: 5px; }
}

@media screen and (min-width: 55em) {
	.flex-table thead tr, .flex-table tbody tr { flex-direction: row; }
	.flex-table.table-rounded tbody tr td { border-radius: 8px; }
	.flex-table tbody tr td { text-align: center; }
	.flex-table.alt tbody tr td { text-align: left; }
}

@media screen and (min-width: 62em) {
	.flex-table tbody tr { display: flex;border: 0; }
	.flex-table tbody tr td { border: 1px solid #fff; }
	.flex-table.white tbody tr td { border: 1px solid #c9c9c9; }
	.flex-table.regular tbody tr td { border: 0; }
	.flex-table.alt tbody tr { display: grid;grid-template-columns: repeat(4, 1fr); }
	.flex-table.alt tbody tr td { text-align: center; }
}