.foreign-registration-page
{
	font-size: 14px;
}

.foreign-registration-main
{
	padding-top: 42px;
}

.foreign-registration-heading
{
	margin-bottom: 28px;
}

.foreign-account-grid
{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
	align-items: start;
}

.foreign-account-panel
{
	margin-bottom: 0;
}

.foreign-account-form
{
	display: grid;
	gap: 17px;
	padding: 22px 24px 25px;
}

.foreign-required
{
	color: #d9534f;
}

.foreign-session-bar small
{
	font-size: 0.75em;
	color: rgba(255, 255, 255, 0.78);
}

.foreign-summary-cards
{
	margin-top: 22px;
}

.foreign-admin-note
{
	margin-top: 20px;
}

.foreign-application-form
{
	padding: 17px;
}

.foreign-application-form > .portal-form-grid-three
{
	row-gap: 14px;
	column-gap: 13px;
}

.foreign-application-form .portal-form-group label
{
	margin-bottom: 5px;
}


.foreign-request-row
{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	margin-top: 22px;
	align-items: stretch;
}

.foreign-request-row .foreign-request-section
{
	margin-top: 0;
	height: 100%;
}

.foreign-request-section
{
	margin: 22px 0 0;
	padding: 18px 19px 19px;
	border: 1px solid #dce9f3;
	border-radius: 10px;
	background: #f8fcff;
}

.foreign-request-heading
{
	margin-bottom: 16px;
}

.foreign-request-heading h4
{
	margin: 0 0 5px;
	font-size: 1.05rem;
	color: #063d6b;
}

.foreign-request-heading p
{
	margin: 0;
	color: #687a88;
}

.foreign-request-section .portal-form-grid-three
{
	row-gap: 13px;
	column-gap: 13px;
}

.foreign-request-total
{
	margin-top: 10px;
	text-align: right;
	font-weight: 800;
	color: #0b5d91;
}

.foreign-grand-total
{
	margin-top: 20px;
	padding: 15px 18px;
	border-radius: 9px;
	background: #073f6e;
	text-align: right;
	font-size: 1rem;
	font-weight: 800;
	color: #ffffff;
}

.foreign-grand-total strong
{
	margin-left: 8px;
	font-size: 1.25rem;
}

.foreign-remarks-group
{
	margin-top: 22px;
}

.foreign-textarea
{
	min-height: 110px;
	resize: vertical;
}

.foreign-security-panel
{
	margin-top: 24px;
}

.foreign-security-panel > form
{
	padding: 17px;
}

@media (max-width: 1050px)
{
	.foreign-request-row
	{
		grid-template-columns: 1fr;
	}
}

@media (max-width: 900px)
{
	.foreign-account-grid
	{
		grid-template-columns: 1fr;
	}
}

@media (max-width: 760px)
{
	.foreign-application-form,
	.foreign-security-panel > form
	{
		padding: 14px;
	}

	.foreign-request-section
	{
		padding: 15px;
	}

	.foreign-request-total,
	.foreign-grand-total
	{
		text-align: left;
	}
}

/* ====================================================================================================
   PHASE 2C - APPROVED FOREIGN CONTINGENT MANAGEMENT
==================================================================================================== */
.foreign-approved-management
{
	margin-top: 22px;
}

.foreign-approved-management .foreign-request-row
{
	padding: 0 17px;
	margin-top: 17px;
}

.foreign-approved-actions,
.foreign-management-actions
{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	flex-wrap: wrap;
}

.foreign-approved-actions
{
	padding: 4px 17px 20px;
}

.foreign-management-actions .portal-btn,
.foreign-approved-actions .portal-btn
{
	text-decoration: none;
}

@media (max-width: 760px)
{
	.foreign-management-actions,
	.foreign-approved-actions
	{
		justify-content: flex-start;
	}
}

/* ====================================================================================================
   FOREIGN USD PAYMENT SUMMARY
==================================================================================================== */
.foreign-summary-cards
{
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.foreign-payment-status-card small
{
	display: block;
	margin-top: 3px;
	font-size: 0.68rem;
	line-height: 1.35;
	color: #6d7e8a;
}

.foreign-payment-card-label
{
	font-size: 0.92rem !important;
	line-height: 1.25;
}

.foreign-payment-status-paid
{
	border-left-color: #1f9d66;
}

.foreign-payment-status-partial
{
	border-left-color: #2f80c9;
}

.foreign-payment-status-pending
{
	border-left-color: #e5a11a;
}

.foreign-payment-status-review
{
	border-left-color: #d9534f;
}

.foreign-payment-panel
{
	margin-top: 22px;
}

.foreign-payment-body
{
	padding: 20px 22px 23px;
}

.foreign-payment-reference-row,
.foreign-payment-category-grid,
.foreign-payment-money-grid
{
	display: grid;
	gap: 13px;
}

.foreign-payment-reference-row
{
	grid-template-columns: 1.5fr 0.7fr 1fr 1fr;
}

.foreign-payment-reference-row > div,
.foreign-payment-category-grid > div
{
	padding: 13px 15px;
	border: 1px solid #dce8f1;
	border-radius: 8px;
	background: #f9fcfe;
}

.foreign-payment-reference-row span,
.foreign-payment-category-grid span,
.foreign-payment-money span
{
	display: block;
	margin-bottom: 3px;
	font-size: 0.69rem;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: #71828f;
}

.foreign-payment-reference-row strong,
.foreign-payment-category-grid strong
{
	font-size: 0.92rem;
	color: #123d5d;
}

.foreign-payment-category-grid
{
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-top: 13px;
}

.foreign-payment-category-grid > div
{
	text-align: center;
}

.foreign-payment-money-grid
{
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 14px;
}

.foreign-payment-money
{
	padding: 16px 17px;
	border: 1px solid #cfe0ec;
	border-radius: 9px;
	background: #f2f9fd;
}

.foreign-payment-money strong
{
	font-size: 1.12rem;
	color: #075b8e;
}

.foreign-payment-money-paid
{
	border-color: #c8e8da;
	background: #f1fbf6;
}

.foreign-payment-money-paid strong
{
	color: #178655;
}

.foreign-payment-money-balance
{
	border-color: #eadfbe;
	background: #fffaf0;
}

.foreign-payment-money-balance strong
{
	color: #ad7410;
}

.foreign-payment-note
{
	margin-top: 14px;
}

.foreign-payment-history-wrap
{
	margin-top: 20px;
	padding-top: 18px;
	border-top: 1px solid #deebf3;
}

.foreign-payment-history-wrap h4
{
	margin: 0 0 11px;
	font-size: 1rem;
	color: #113e5f;
}

.foreign-payment-history-table
{
	min-width: 760px;
}

.foreign-payment-history-table td
{
	white-space: normal;
}

.foreign-payment-badge-paid
{
	background: #eaf8f1;
	border-color: #b8e3cf;
	color: #17784f;
}

.foreign-payment-badge-partial
{
	background: #eef7ff;
	border-color: #bedcf5;
	color: #17699e;
}

.foreign-payment-badge-pending
{
	background: #fff7e6;
	border-color: #f1d699;
	color: #99660a;
}

.foreign-payment-badge-review
{
	background: #fff0f0;
	border-color: #efbcbc;
	color: #b33737;
}

.foreign-participant-payment-message
{
	margin: 18px 0 0;
}

@media (max-width: 1150px)
{
	.foreign-summary-cards
	{
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.foreign-payment-reference-row
	{
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 760px)
{
	.foreign-summary-cards,
	.foreign-payment-reference-row,
	.foreign-payment-category-grid,
	.foreign-payment-money-grid
	{
		grid-template-columns: 1fr;
	}

	.foreign-payment-body
	{
		padding: 15px;
	}
}
