/* Cerberus Characters front-end styles */

.cerberus-character-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 20px;
	margin: 20px 0;
}

.cerberus-character--card {
	border: 1px solid #ddd;
	border-radius: 6px;
	padding: 16px;
	background: #fff;
}

.cerberus-character__link {
	text-decoration: none;
	color: inherit;
}

.cerberus-character__image img {
	width: 100%;
	height: auto;
	border-radius: 4px;
	margin-bottom: 10px;
}

.cerberus-character__name {
	margin: 0 0 6px;
	font-size: 1.1em;
}

.cerberus-character__excerpt {
	font-size: 0.9em;
	color: #555;
	margin: 6px 0 0;
}

.cerberus-character__status {
	display: inline-block;
	font-size: 0.75em;
	font-weight: 600;
	padding: 2px 8px;
	border-radius: 10px;
	margin-bottom: 8px;
	background: #f0f0f1;
	color: #646970;
}

.cerberus-character__status--pending {
	background: #fef8ee;
	color: #996800;
}

.cerberus-character-fields {
	margin-top: 24px;
}

.cerberus-field-group {
	margin: 24px 0 8px;
	border-bottom: 1px solid #ddd;
	padding-bottom: 4px;
}

.cerberus-field-group-body {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 12px 24px;
}

.cerberus-field {
	display: flex;
	flex-direction: column;
}

.cerberus-field__label {
	font-size: 0.8em;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	color: #777;
}

.cerberus-field__value {
	font-size: 1em;
}

.cerberus-character-form .cerberus-field-row {
	margin-bottom: 16px;
}

.cerberus-character-form .required {
	color: #b32d2e;
}

.cerberus-notice {
	padding: 10px 14px;
	border-radius: 4px;
	background: #f0f6fc;
	border: 1px solid #c5d9ed;
}

.cerberus-notice--success {
	background: #edfaef;
	border-color: #b8e6bd;
}

.cerberus-notice--error {
	background: #fcf0f1;
	border-color: #e6b8bd;
}

.cerberus-pagination {
	margin-top: 20px;
}
