#page-limits {
	max-width: 1280px;
	margin: 0 auto;
	padding: 20px;
	box-sizing: border-box;
}

.unit-table,
.weapon-table,
.ability-table {
	display: block;
	width: 100%;
	max-width: 100%;
	overflow-x: auto;
	margin-bottom: 20px;
	
	border-radius: 8px;
	background: #fafafa;
	border: 1px solid #ccc;
	padding:10px;
}

.unit-table > div,
.weapon-table > div,
.ability-table > div {
	min-width: max-content;
}

@media (max-width:768px) {
	#page-limits {
		padding: 10px;
	}
	
	.unit-table,
	.weapon-table,
	.ability-table {
		border-radius: 6px;
		font-size: 0.9em;
	}
	
	.unit-table::after,
	.weapon-table::after,
	.ability-table::after {
		content: "→ Scroll →";
		display: block;
		text-align: right;
		font-size: 0.8em;
		color: #888;
		margin-top: 4px;
	}
}

.uheader-row {
	display: grid;
	width: 100%;
	gap: 10px;
	padding-left: 5px;
	padding-top: 10px;
	box-sizing: border-box;
}
.wheader-row {
	display: grid;
	width: 100%;
	gap: 10px;
	padding-left: 5px;
	padding-top: 10px;
	box-sizing: border-box;
}
.aheader-row {
	display: grid;
	text-align: left;
	gap: 10px;
	padding-left: 5px;
	padding-top: 10px;
	grid-column: 1 / -1;
	box-sizing: border-box;
}

.unit-row {
	display: grid;
	grid-auto-flow: row;
	width: 100%;
	gap: 10px;
	padding: 5px;
	grid-column-start: 1;
	box-sizing: border-box;
}
.weapon-row {
	display: grid;
	grid-auto-flow: row;
	width: 100%;
	gap: 10px;
	grid-column-start: 1;
	box-sizing: border-box;
	padding: 5px;
}
.ability-row {
	display: grid;
	grid-auto-flow: row;
	grid-column-start: 1;
	box-sizing: border-box;
	padding: 5px;
}

.unit-left {
	text-align: left !important;
	padding-left: 10px;
}
.weapon-left {
	text-align: left !important;
	padding-left: 10px;
}
.ability-left {
	text-align: left !important;
	padding-left: 10px;
}

.header-cell {
	font-weight: bold;
	text-align: center;
	border-bottom: 1px solid #ccc;
}
.cell {
	text-align: center;
}
.keyword-cell {
	display: flex;
	align-items: stretch;
}

.keyword-container {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 5px;
	width: 100%;
}
.keyword-input {
	flex: 0 0 auto;
	width: 120px;
	height: 100%;
	padding: 5px;
	box-sizing: border-box;
	height: calc(1.5em + 10px);
}
.tags {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	align-items: flex-start;
}
.tag {
	background: #ddd;
	padding: 3px 8px;
	border-radius: 12px;
	text-align: left;
	white-space: nowrap;
	height: auto;
	line-height: 1.2;
}
.tag.revealed {
	display: inline-block;
	background: #ddd;
}
.tag.correct {
	background: lightgreen;
	border: 1px solid green;
}
.tag.incorrect {
	background: #fbb;
	border: 1px solid red;
}

.suggestions {
	position: absolute;
	background: white;
	border: 1px solid #aaa;
	max-height: 150px;
	overflow-y: auto;
	z-index: 10;
}
.suggestion {
	padding: 4px;
	cursor: pointer;
}
.suggestion:hover {
	background: #eee;
}

.grayed {
	background-color: #eee;
	color: #555;
}

input[type="text"] {
	width: 90%;
	padding-top: 5px;
	padding-bottom: 5px;
	text-align: center;
	box-sizing: border-box;
}
textarea {
	width: 100%;
	padding: 5px;
	text-align: left;
	resize: none;
	overflow: hidden;
	box-sizing: border-box;
}

#progress {
	margin-bottom: 10px;
	font-weight: bold;
}
.hidden {
	display: none;
}