.cmnn-portal {
	--navy: #0E2C52;
	--navy-dark: #091D38;
	--green: #3E7A22;
	--amber: #B5651D;
	--line: #DDD9CC;
	--ink: #14202E;
	--muted: #63696B;

	max-width: 640px;
	margin: 0 auto;
	padding: 40px 24px;
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
	color: var(--ink);
}

.cmnn-portal h2 {
	font-family: 'Fraunces', Georgia, serif;
	font-size: 26px;
	margin-bottom: 12px;
}

.cmnn-credential {
	text-align: center;
	font-size: 13px;
	font-weight: 600;
	color: var(--green);
	letter-spacing: 0.01em;
	margin: 0 0 18px;
}

.cmnn-notice {
	background: rgba(14, 44, 82, 0.06);
	border: 1px solid rgba(14, 44, 82, 0.18);
	border-radius: 6px;
	padding: 14px 16px;
	font-size: 14.5px;
	margin-bottom: 22px;
	color: #1B2E4D;
}

.cmnn-alert { padding: 14px 16px; border-radius: 6px; margin-bottom: 18px; font-size: 14.5px; }
.cmnn-alert--error { background: rgba(181, 101, 29, 0.1); border: 1px solid var(--amber); color: #7A430F; }

.cmnn-form__honeypot { position: absolute; left: -9999px; }
.cmnn-form__row { margin-bottom: 18px; }
.cmnn-form__row--split { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.cmnn-form label { display: block; font-weight: 600; font-size: 14px; margin-bottom: 6px; }
.cmnn-form input, .cmnn-form select, .cmnn-form textarea {
	width: 100%;
	font-size: 15px;
	padding: 11px 13px;
	border: 1px solid var(--line);
	border-radius: 5px;
	background: #fff;
}
.cmnn-form textarea { resize: vertical; }
.cmnn-form .cmnn-field-error { border-color: var(--amber); background: rgba(181, 101, 29, 0.05); }

.cmnn-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: var(--navy);
	color: #fff !important;
	font-weight: 600;
	font-size: 15px;
	padding: 12px 22px;
	border: none;
	border-radius: 4px;
	cursor: pointer;
	text-decoration: none !important;
}
.cmnn-btn:hover { background: var(--navy-dark); }

.cmnn-status-badge {
	display: inline-block;
	font-weight: 600;
	font-size: 14px;
	padding: 6px 14px;
	border-radius: 20px;
	background: rgba(62, 122, 34, 0.1);
	color: var(--green);
	margin-bottom: 18px;
}
.cmnn-status-badge--failed_id_check,
.cmnn-status-badge--canceled { background: rgba(181, 101, 29, 0.12); color: #7A430F; }

@media (max-width: 600px) {
	.cmnn-form__row--split { grid-template-columns: 1fr; }
}
