@import "./flexbox.css";
@import "./utils.css";

.datatable {
	width: 100%;
}

.datatable > table {
	overflow: auto;
	border: solid .1em #d0d0d0;
	border-radius: .25em;
	background-color: white;
	border-spacing: 0;
	margin: 0;
	width: 100%;
}


.datatable > table > tbody > tr:nth-child(2n) {
	background-color: rgba(0,0,0,.05);
}

.datatable > table tr > th,
.datatable > table tr > td {
	padding: .5em 1em;
	text-align: left;
	border-bottom: solid .1em #d0d0d0;
	border-right: solid .1em #d0d0d0;
}

.datatable > table tr:last-child > td {
	border-bottom: none;
}

.datatable > table tr > th:last-child,
.datatable > table tr > td:last-child {
	border-right: none;
}

.datatable > table > thead th {
	cursor: pointer;
}

.datatable > table > thead th::after {
	margin-left: auto;
	padding: 0 .125em;
	content: "\00a0\21c5";
	color: #d0d0d0;
	font-weight: bold;
}

.datatable > table > thead th[aria-sort=ascending]::after {
	color: black;
	content: "\00a0\21c8";
}

.datatable > table > thead th[aria-sort=descending]::after {
	color: black;
	content: "\00a0\21ca";
}

.datatable_pagination {
	display: flex;
	align-items: center;
}

.datatable_pagination > .btn {
	height: 3rem;
	min-width: 2rem;
	margin-top: 0;
	margin-bottom: 0;
	text-align: center;
}

.datatable_pagination > .btn.btn-char {
	font-size: .75em;
}

.datatable_pagination > .btn[aria-selected=true] {
	background-color: #d0d0d0;
	border-color: #b0b0b0;
}

.datatable_pagination > .btn:last-child {
	margin-right: 0;
}

.datatable1 {
	width: 100%;
}

.datatable1 > table {
	border: solid .1em #d0d0d0;
	border-radius: .25em;
	background-color: white;
	border-spacing: 0;
	margin: 0;
	width: 100%;
}
.datatable1 table tbody {
	max-height: 400px;
	overflow: auto;
}
.datatable1 > table > tbody > tr:nth-child(2n) {
	background-color: rgba(0,0,0,.05);
}

.datatable1 > table tr > th,
.datatable1 > table tr > td {
	padding: .5em 1em;
	text-align: left;
	border-bottom: solid .1em #d0d0d0;
	border-right: solid .1em #d0d0d0;
}

.datatable1 > table tr:last-child > td {
	border-bottom: none;
}

.datatable1 > table tr > th:last-child,
.datatable1 > table tr > td:last-child {
	border-right: none;
}

.datatable1 > table > thead th {
	cursor: pointer;
}

.datatable1 > table > thead th::after {
	margin-left: auto;
	padding: 0 .125em;
	content: "\00a0\21c5";
	color: #d0d0d0;
	font-weight: bold;
}

.datatable1 > table > thead th[aria-sort=ascending]::after {
	color: black;
	content: "\00a0\21c8";
}

.datatable1 > table > thead th[aria-sort=descending]::after {
	color: black;
	content: "\00a0\21ca";
}
.datatable2 {
	width: 100%;
}

.datatable2 > table {
	border: solid .1em #d0d0d0;
	border-radius: .25em;
	background-color: white;
	border-spacing: 0;
	margin: 0;
	width: 100%;
}
.datatable2 table tbody {
	max-height: 400px;
	overflow: auto;
}
.datatable2 > table > tbody > tr:nth-child(2n) {
	background-color: rgba(0,0,0,.05);
}

.datatable2 > table tr > th,
.datatable2 > table tr > td {
	padding: .5em 1em;
	text-align: left;
	border-bottom: solid .1em #d0d0d0;
	border-right: solid .1em #d0d0d0;
	word-break: break-word;
}

.datatable2 > table tr:last-child > td {
	border-bottom: none;
}

.datatable2 > table tr > th:last-child,
.datatable2 > table tr > td:last-child {
	border-right: none;
}

.datatable2 > table > thead th {
	cursor: pointer;
}

.datatable2 > table > thead th::after {
	margin-left: auto;
	padding: 0 .125em;
	content: "\00a0\21c5";
	color: #d0d0d0;
	font-weight: bold;
}

.datatable2 > table > thead th[aria-sort=ascending]::after {
	color: black;
	content: "\00a0\21c8";
}

.datatable2 > table > thead th[aria-sort=descending]::after {
	color: black;
	content: "\00a0\21ca";
}

.datatable3 {
	width: 100%;
}
.datatable3 > table {
	border: solid .1em #d0d0d0;
	border-radius: .25em;
	background-color: white;
	border-spacing: 0;
	margin: 0;
	width: 100%;
}
.datatable3 table tbody {
	max-height: 400px;
	overflow: auto;
}
.datatable3 > table > tbody > tr:nth-child(2n) {
	background-color: rgba(0,0,0,.05);
}

.datatable3 > table tr > th,
.datatable3 > table tr > td {
	padding: .5em 1em;
	text-align: left;
	border-bottom: solid .1em #d0d0d0;
	border-right: solid .1em #d0d0d0;
}

.datatable3 > table tr:last-child > td {
	border-bottom: none;
}

.datatable3 > table tr > th:last-child,
.datatable3 > table tr > td:last-child {
	border-right: none;
}

.datatable3 > table > thead th {
	cursor: pointer;
}

.datatable3 > table > thead th::after {
	margin-left: auto;
	padding: 0 .125em;
	content: "\00a0\21c5";
	color: #d0d0d0;
	font-weight: bold;
}

.datatable3 > table > thead th[aria-sort=ascending]::after {
	color: black;
	content: "\00a0\21c8";
}

.datatable3 > table > thead th[aria-sort=descending]::after {
	color: black;
	content: "\00a0\21ca";
}
.datatable_pagination {
	display: flex;
	align-items: center;
}

.datatable_pagination > .btn {
	height: 3rem;
	min-width: 2rem;
	margin-top: 0;
	margin-bottom: 0;
	text-align: center;
}

.datatable_pagination > .btn.btn-char {
	font-size: .75em;
}

.datatable_pagination > .btn[aria-selected=true] {
	background-color: #d0d0d0;
	border-color: #b0b0b0;
}

.datatable_pagination > .btn:last-child {
	margin-right: 0;
}
/* flexbox */

.row {
    width: 100%;
    display: flex;
    flex-direction: row;
}

.row.align-top { align-items: flex-start; }
.row.align-middle { align-items: center; }
.row.align-bottom { align-items: flex-end; }

.row.align-left { justify-content: flex-start; }
.row.align-center { justify-content: center; }
.row.align-right { justify-content: flex-end; }

.col {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.col-left { margin-right: auto; }
.col-center { margin: 0 auto; }
.col-right { margin-left: auto; }

.col.col-auto { flex-grow: 1; }

.col.col-1-4 { width: 25%; margin-left: 2.5%}
.col.col-1-3 { width: calc(100% / 3); }
.col.col-1-2 { width: 50%; margin-right: 2.5%;}
.col.col-2-3 { width: calc(200% / 3); }
.col.col-3-4 { width: 75%; }
.col.col-1-1 { width: 100%; }

.col.align-top { justify-content: flex-start; }
.col.align-middle { justify-content: center; }
.col.align-bottom { justify-content: flex-end; }

.col.align-left { align-items: flex-start; }
.col.align-center { align-items: center; }
.col.align-right { align-items: flex-end; }

/* MARGINS */
.m-0 { margin: 0;}
.mb-0 { margin-bottom: 0; }
.mt-0 { margin-top: 0; }
.ml-0 { margin-left: 0; }
.mr-0 { margin-right: 0; }
.my-0 { margin: 0 unset; }
.mx-0 { margin: unset 0; }

.m-1-2 { margin: .5rem; }
.mb-1-2 { margin-bottom: .5rem; }
.mt-1-2 { margin-top: .5rem; }
.ml-1-2 { margin-left: .5rem; }
.mr-1-2 { margin-right: .5rem; }
.my-1-2 { margin: .5rem unset; }
.mx-1-2 { margin: unset .5rem; }

.m-1 { margin: 1rem; }
.mb-1 { margin-bottom: 1rem; }
.mt-1 { margin-top: 1rem; }
.ml-1 { margin-left: 1rem; }
.mr-1 { margin-right: 1rem; }
.my-1 { margin: 1rem unset; }
.mx-1 { margin: unset 1rem; }

.m-2 { margin: 2rem; }
.mb-2 { margin-bottom: 2rem; }
.mt-2 { margin-top: 2rem; }
.ml-2 { margin-left: 2rem; }
.mr-2 { margin-right: 2rem; }
.my-2 { margin: 2rem unset; }
.mx-2 { margin: unset 2rem; }

.m-3 { margin: 3rem; }
.mb-3 { margin-bottom: 3rem; }
.mt-3 { margin-top: 3rem; }
.ml-3 { margin-left: 3rem; }
.mr-3 { margin-right: 3rem; }
.my-3 { margin: 3rem unset; }
.mx-3 { margin: unset 3rem; }

.m-4 { margin: 4rem; }
.mb-4 { margin-bottom: 4rem; }
.mt-4 { margin-top: 4rem; }
.ml-4 { margin-left: 4rem; }
.mr-4 { margin-right: 4rem; }
.my-4 { margin: 4rem unset; }
.mx-4 { margin: unset 4rem; }

.m-5 { margin: 5rem; }
.mb-5 { margin-bottom: 5rem; }
.mt-5 { margin-top: 5rem; }
.ml-5 { margin-left: 5rem; }
.mr-5 { margin-right: 5rem; }
.my-5 { margin: 5rem unset; }
.mx-5 { margin: unset 5rem; }

/* MOBILE */
@media screen and (max-width: 720px) {
	.row {
		flex-wrap: wrap !important;
		align-items: center !important;
		justify-content: center !important;
	}
	.col {
		height: auto !important;
		width: 100% !important;
		margin-bottom: .5em;
		align-items: center !important;
	}
}

/* utils */
* {
	box-sizing: border-box;
}

.btn {
	border-radius: 0.25em;
    border: solid .01em #d0d0d0;
    cursor: pointer;
	padding: .5em;
	margin: .25em;
	font-size: 1em;
	color: black;
}

.control {
	font-size: 18px;
	position: relative;
	width: 100%;
    font-family: inherit;
    border-radius: .25em;
    border: solid .01em #c0c0c0;
	padding-inline-start: 0;

    padding: calc(.5em - 1px) .75em;
}

select.control {
    padding: calc(.5em - 2px) .75em;
}

select.control option {
    font-family: inherit;
	font-size: inherit;
}

