@charset "utf-8";

a {
	color: #0645ad;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

a:active {
	color: #faa700;
}

h1 {
	font-weight: normal;
	text-align: center;
}

.generator {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
}

@media screen and (max-width: 799px) {
	.generator {
		flex-direction: column;
	}
}

.description,
.preview,
.editor,
.download {
	display: flex;
	justify-content: center;
	margin: 1rem 0.25rem;
}

.infobox {
	width: 330px;
	font-size: 14px;
	color: #202122;
	padding: 10px;
}

.infobox table {
	border: 1px solid #a2a9b1;
	border-collapse: collapse;
	background-color: #f8f9fa;
}

.infobox img {
	vertical-align: middle;
}

.infobox th,
.infobox td {
	border: 1px solid #a2a9b1;
}

.infobox td {
	padding: 9px;
}

.infobox.coat .title,
.infobox.coat #label,
.infobox.coat .tag {
	background-color: #f0e68c;
}

.infobox .title,
.infobox #label {
	text-align: center;
}

.infobox #title {
	padding: 0.25rem;
	font-size: large;
}

.infobox #title div {
	margin-top: 3px;
}

.infobox #label {
	font-size: medium;
	font-weight: bold;
}

.infobox #name-kana {
	font-size: x-small;
	font-weight: bold;
}

.infobox #name {
	font-weight: bold;
}

.infobox .images div:not(:last-child) {
	margin-bottom: 0.5rem;
}

.infobox .image-source {
	font-size: x-small;
}

.infobox .image {
	text-align: center;
}

.infobox .image img {
	width: 100%;
}

.infobox #image-caption {
	text-align: center;
	font-size: x-small;
}

.infobox .tag {
	padding: 2px 8px;
	border-radius: 8px;
	margin-right: 5px;
}

.infobox #item1-name,
.infobox #item2-name,
.infobox #item3-name {
	width: 5.5em;
	background-color: #e8e8e8;
	text-align: center;
	font-weight: bold;
}

.infobox #footer {
	margin-top: 0.5rem;
	text-align: center;
}

.editor {
	width: 500px;
	max-width: 100%;
}

.editor table {
	border-collapse: collapse;
}

.editor table th,
.editor table td {
	padding: 0.75rem 0.25rem;
	background-color: #f9f9f9;
	border: solid 1px #ccc;
}

.editor table th {
	width: 20%;
	font-size: 90%;
}

.editor table td {
	width: auto;
}

.editor table td input {
	box-sizing: border-box;
	width: calc(100% - 0.25rem);
	margin: 0.125rem;
	padding: 0.25rem;
	font-size: 100%;
	border: solid 1px #ccc;
}

.download .button {
	display: inline-block;
	margin: 0.5rem;
	width: 5rem;
	padding: 1rem 2rem;
	color: #fff;
	background-color: #36c;
	border-color: #36c;
	font-size: large;
	line-height: 1.5rem;
	text-decoration: none;
	text-align: center;
}

.download .button:hover {
	opacity: 0.9;
}

.download .button:active {
	opacity: 0.7;
}

.download .button:focus {
	opacity: 0.9;
}

#copy {
	margin-top: 3rem;
	text-align: center;
	font-size: small;
}