.wp71m-form-wrap {
	max-width: 720px;
	margin: 0 auto;
	font-size: 1rem;
	line-height: 1.6;
}

.wp71m-form-wrap h2,
.wp71m-form-wrap h3 {
	margin: 1.5em 0 0.75em;
}

.wp71m-form-wrap h3:first-child {
	margin-top: 0;
}

.wp71m-notice {
	padding: 0.9em 1.1em;
	border-radius: 6px;
	margin-bottom: 1.25em;
}

.wp71m-notice ul {
	margin: 0;
	padding-left: 1.2em;
}

.wp71m-notice-error {
	background: #f7e4e1;
	color: #a8433a;
	border: 1px solid #e3b9b3;
}

.wp71m-notice-success {
	background: #e4f0ec;
	color: #1e6f63;
	border: 1px solid #b8dcd2;
}

.wp71m-notice-info {
	background: #eef2f6;
	color: #33475b;
	border: 1px solid #c7d3de;
}

.wp71m-field {
	margin-bottom: 1.1em;
}

.wp71m-field label {
	display: block;
	font-weight: 600;
	margin-bottom: 0.35em;
}

.wp71m-field input[type="text"],
.wp71m-field input[type="email"],
.wp71m-field input[type="password"],
.wp71m-field input[type="date"],
.wp71m-field input[type="file"],
.wp71m-field select,
.wp71m-field textarea {
	width: 100%;
	padding: 0.55em 0.7em;
	border: 1px solid #ccc;
	border-radius: 5px;
	font-size: 1em;
	box-sizing: border-box;
}

.wp71m-field .required {
	color: #a8433a;
}

.wp71m-radio {
	margin-bottom: 0.6em;
}

.wp71m-radio .description {
	display: block;
	margin: 0.2em 0 0 1.6em;
	color: #666;
	font-size: 0.88em;
}

.wp71m-cheque-fields {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0.8em;
	margin: 0.5em 0 1.2em;
}

@media (max-width: 640px) {
	.wp71m-cheque-fields {
		grid-template-columns: 1fr;
	}
}

.wp71m-button,
button.wp71m-button {
	display: inline-block;
	background: #1e6f63;
	color: #fff;
	border: none;
	padding: 0.7em 1.6em;
	border-radius: 6px;
	font-size: 1em;
	cursor: pointer;
	text-decoration: none;
}

.wp71m-button:hover {
	background: #17554b;
	color: #fff;
}

.wp71m-links {
	margin-top: 0.5em;
}

.wp71m-summary {
	background: #f2f4f1;
	border-radius: 8px;
	padding: 1.2em 1.4em;
	margin-bottom: 1.5em;
}

.wp71m-readonly-table {
	width: 100%;
	border-collapse: collapse;
	margin-top: 0.6em;
}

.wp71m-readonly-table th,
.wp71m-readonly-table td {
	text-align: left;
	padding: 0.4em 0.6em 0.4em 0;
	border-bottom: 1px solid #dde2df;
}

.wp71m-badge {
	display: inline-block;
	font-size: 0.8em;
	padding: 0.2em 0.7em;
	border-radius: 999px;
	font-weight: 600;
}

.wp71m-badge-ok {
	background: #e4f0ec;
	color: #1e6f63;
}

.wp71m-badge-pending {
	background: #f5e9d6;
	color: #96631f;
}

.wp71m-badge-expired {
	background: #f7e4e1;
	color: #a8433a;
}

.wp71m-search-table {
	width: 100%;
	border-collapse: collapse;
	margin-top: 1em;
}

.wp71m-search-table th,
.wp71m-search-table td {
	text-align: left;
	padding: 0.5em 0.7em;
	border-bottom: 1px solid #ddd;
}
