/* RMEO Membership & Digital Certificates — public-facing styles */

.rmeo-ms-wrap {
	max-width: 720px;
	margin: 0 auto;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
	color: #374151;
}

.rmeo-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	padding: 28px 32px;
	margin-bottom: 24px;
	box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}

.rmeo-card h3 {
	margin-top: 0;
	color: #1f2937;
}

.rmeo-notice {
	padding: 14px 18px;
	border-radius: 8px;
	margin-bottom: 20px;
	font-size: 14px;
}
.rmeo-notice-success { background: #ecfdf5; color: #065f46; border: 1px solid #a7f3d0; }
.rmeo-notice-error   { background: #fef2f2; color: #991b1b; border: 1px solid #fecaca; }
.rmeo-notice-info    { background: #eff6ff; color: #1e40af; border: 1px solid #bfdbfe; }

.rmeo-form label {
	display: block;
	font-weight: 600;
	font-size: 13.5px;
	color: #374151;
	margin: 14px 0 6px;
}
.rmeo-form .req { color: #dc2626; }

.rmeo-form input[type="text"],
.rmeo-form input[type="email"],
.rmeo-form input[type="tel"],
.rmeo-form textarea {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid #d1d5db;
	border-radius: 7px;
	font-size: 14.5px;
	box-sizing: border-box;
}
.rmeo-form input:focus,
.rmeo-form textarea:focus {
	outline: none;
	border-color: #2bc4ea;
	box-shadow: 0 0 0 3px rgba(43,196,234,0.15);
}

.rmeo-field-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}
@media (max-width: 600px) {
	.rmeo-field-row { grid-template-columns: 1fr; }
}

.rmeo-honeypot { display: none !important; }

.rmeo-level-options {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.rmeo-level-option {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 4px 10px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	padding: 12px 14px;
	cursor: pointer;
	font-weight: 400;
}
.rmeo-level-option:hover { border-color: #2bc4ea; }
.rmeo-level-name { font-weight: 600; color: #1f2937; }
.rmeo-level-price { font-size: 13px; color: #6b7280; text-align: right; }
.rmeo-level-desc { grid-column: 2 / span 2; font-size: 12.5px; color: #6b7280; }

.rmeo-btn {
	display: inline-block;
	margin-top: 20px;
	padding: 11px 22px;
	border: none;
	border-radius: 7px;
	font-size: 14.5px;
	font-weight: 600;
	cursor: pointer;
	text-decoration: none;
}
.rmeo-btn-primary {
	background: #2bc4ea;
	color: #fff;
}
.rmeo-btn-primary:hover { background: #1fa9cc; }
.rmeo-btn-secondary {
	background: #f3f4f6;
	color: #374151;
	border: 1px solid #d1d5db;
}

.rmeo-payment-instructions {
	background: #f9fafb;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	padding: 14px 16px;
	white-space: pre-wrap;
	font-family: inherit;
	font-size: 14px;
	color: #374151;
}

.rmeo-inline-form { display: inline-block; margin-top: 16px; }

/* Member dashboard */
.rmeo-status-badge {
	display: inline-block;
	padding: 5px 14px;
	border-radius: 999px;
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	margin-bottom: 12px;
}
.rmeo-badge-yellow { background: #fef9c3; color: #854d0e; }
.rmeo-badge-green  { background: #dcfce7; color: #166534; }
.rmeo-badge-red    { background: #fee2e2; color: #991b1b; }
.rmeo-badge-gray   { background: #f3f4f6; color: #4b5563; }
.rmeo-badge-orange { background: #ffedd5; color: #9a3412; }

.rmeo-member-number {
	font-size: 14px;
	color: #6b7280;
	margin-top: -8px;
}

.rmeo-info-table {
	width: 100%;
	border-collapse: collapse;
	margin: 18px 0;
}
.rmeo-info-table th,
.rmeo-info-table td {
	text-align: left;
	padding: 8px 0;
	border-bottom: 1px solid #f3f4f6;
	font-size: 14px;
}
.rmeo-info-table th {
	width: 40%;
	color: #6b7280;
	font-weight: 600;
}

.rmeo-info-text {
	background: #f9fafb;
	border-radius: 8px;
	padding: 12px 14px;
	font-size: 14px;
	color: #6b7280;
}

.rmeo-certificate-box {
	border: 1px dashed #2bc4ea;
	border-radius: 10px;
	padding: 20px;
	margin: 18px 0;
	text-align: center;
	background: #f0fcff;
}
.rmeo-certificate-box h4 { margin-top: 0; color: #1f2937; }
.rmeo-cert-code {
	font-family: monospace;
	font-size: 16px;
	letter-spacing: 0.05em;
	color: #2bc4ea;
	font-weight: 700;
}
.rmeo-link-secondary {
	display: block;
	margin-top: 12px;
	font-size: 13px;
	color: #6b7280;
}

/* Verification page */
.rmeo-verify-form {
	display: flex;
	gap: 10px;
	margin-top: 16px;
}
.rmeo-verify-form input {
	flex: 1;
	padding: 11px 14px;
	border: 1px solid #d1d5db;
	border-radius: 7px;
	font-size: 15px;
}
.rmeo-verify-form .rmeo-btn { margin-top: 0; }

.rmeo-verify-result {
	border-radius: 10px;
	padding: 28px 32px;
	text-align: center;
}
.rmeo-verify-valid {
	background: #ecfdf5;
	border: 1px solid #a7f3d0;
}
.rmeo-verify-invalid {
	background: #fef2f2;
	border: 1px solid #fecaca;
}
.rmeo-verify-icon {
	font-size: 40px;
	display: block;
	margin-bottom: 8px;
}
.rmeo-verify-valid .rmeo-verify-icon { color: #16a34a; }
.rmeo-verify-invalid .rmeo-verify-icon { color: #dc2626; }
.rmeo-verify-result .rmeo-info-table { text-align: left; margin-top: 20px; }
