/* ====================================================================================================
   11TH NATIONAL SCOUT JAMBOREE 2027 - TROOP PORTAL
   This file contains only Troop Portal additions. Existing main.css remains unchanged.
==================================================================================================== */
.troop-portal-page
{
	font-size: 14px;
}

.troop-access-form
{
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
}

.troop-session-access
{
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin-top: 7px;
	padding: 4px 8px;
	border: 1px solid #bfdff1;
	border-radius: 4px;
	color: #36566f;
	background: #eef8fd;
	font-size: 0.66rem;
	font-weight: 750;
}

.troop-session-access strong
{
	font-family: Consolas, Monaco, monospace;
	font-size: 0.7rem;
	letter-spacing: 0.04em;
	color: #0b6fb9;
}

.portal-form-grid-four
{
	grid-template-columns: minmax(180px, 0.8fr) minmax(260px, 1.45fr) minmax(140px, 0.55fr) minmax(180px, 0.75fr);
}

.portal-center-cell
{
	text-align: center;
}

.portal-gender-badge
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 56px;
	padding: 3px 7px;
	border-radius: 3px;
	font-size: 0.6rem;
	font-weight: 850;
	letter-spacing: 0.03em;
}

.portal-gender-male
{
	color: #075d9b;
	background: #dff2ff;
}

.portal-gender-female
{
	color: #8b3e70;
	background: #f9e5f1;
}

.portal-qr-cell
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 6px;
	min-width: 205px;
}

.portal-qr-cell span
{
	overflow: hidden;
	max-width: 175px;
	font-family: Consolas, Monaco, monospace;
	font-size: 0.63rem;
	font-weight: 700;
	color: #2d4a61;
	text-overflow: clip;
	white-space: nowrap;
}

.troop-scout-footer-total
{
	text-align: center !important;
}

.portal-access-id span
{
	font-size: 0.64rem;
	font-weight: 750;
	color: #66798a;
}

.portal-access-id strong
{
	font-family: Consolas, Monaco, monospace;
	font-size: 0.68rem;
	letter-spacing: 0.04em;
	color: #0a6dad;
}

@media (max-width: 1100px)
{
	.portal-form-grid-four
	{
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 760px)
{
	.troop-access-form,
	.portal-form-grid-four
	{
		grid-template-columns: 1fr;
	}

	.portal-qr-cell
	{
		min-width: 175px;
	}
}

/* ====================================================================================================
   REGISTRATION PORTAL - SCOUT PROGRESS AND QR
==================================================================================================== */
.portal-form-grid-registration
{
	grid-template-columns: minmax(170px, 0.85fr) minmax(240px, 1.35fr) minmax(125px, 0.55fr) minmax(185px, 0.9fr) minmax(175px, 0.8fr);
}

.scout-qr-table-card
{
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	min-width: 148px;
	padding: 5px;
	border: 1px solid #dceaf4;
	border-radius: 6px;
	background: #ffffff;
}

.scout-qr-preview
{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 82px;
	height: 82px;
	background: #ffffff;
}

.scout-qr-preview canvas
{
	display: block;
	width: 82px;
	height: 82px;
	image-rendering: pixelated;
}

.scout-qr-preview.scout-qr-unavailable
{
	padding: 8px;
	color: #9c3b3b;
	font-size: 0.58rem;
	font-weight: 750;
	line-height: 1.25;
	text-align: center;
}

.scout-qr-table-card small
{
	display: block;
	max-width: 148px;
	overflow: visible;
	color: #36566f;
	font-family: Consolas, Monaco, monospace;
	font-size: 0.57rem;
	font-weight: 750;
	letter-spacing: 0.01em;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.portal-action-qr
{
	background: #167cc4;
}

.portal-actions-cell
{
	min-width: 104px;
}

@media (max-width: 1280px)
{
	.portal-form-grid-registration
	{
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 900px)
{
	.portal-form-grid-registration
	{
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 620px)
{
	.portal-form-grid-registration
	{
		grid-template-columns: 1fr;
	}
}

/* ====================================================================================================
   LOCAL UNIT LEADER REGISTRATION
   Leaders are registered separately from Scouts but use the same portal/table/action-button language.
==================================================================================================== */
.local-leader-panel
{
	margin-top: 24px;
}

.local-leader-registration-form
{
	padding: 18px 20px 20px;
}

.local-leader-registration-form .portal-form-actions
{
	margin-top: 18px;
	padding-top: 14px;
	border-top: 1px solid #e4edf4;
}

.local-fee-source-note
{
	display: flex;
	align-items: flex-start;
	gap: 9px;
	margin: 18px 20px 0;
	padding: 11px 13px;
	border: 1px solid #d7e8f3;
	border-radius: 7px;
	background: #f5fbff;
	color: #49677d;
	font-size: 0.72rem;
	line-height: 1.45;
}

.local-fee-source-note .portal-icon
{
	flex: 0 0 auto;
	width: 17px;
	height: 17px;
	margin-top: 1px;
	color: #167cc4;
}

@media (max-width: 760px)
{
	.local-leader-registration-form
	{
		padding: 14px;
	}

	.local-fee-source-note
	{
		margin-right: 14px;
		margin-left: 14px;
	}
}

/* ====================================================================================================
   JAMBOREE REGISTRATION FEE SUMMARY - PROFESSIONAL PAYMENT SUMMARY
   Scoped only to the Local Registration Fee panel so other portal tables/forms are not affected.
==================================================================================================== */
.local-fee-panel
{
	overflow: hidden;
}

.local-fee-panel .local-fee-source-note
{
	margin: 18px 20px 0;
	padding: 12px 14px;
	border: 1px solid #d7e8f3;
	border-radius: 8px;
	background: #f7fbfe;
	color: #536d80;
}

.local-fee-table-wrap
{
	margin: 16px 20px 0;
	overflow-x: auto;
	border: 1px solid #dbe7ef;
	border-radius: 9px;
	background: #ffffff;
	box-shadow: 0 4px 14px rgba(17, 66, 99, 0.05);
}

.local-fee-table
{
	width: 100%;
	min-width: 720px;
	border-collapse: separate;
	border-spacing: 0;
	background: #ffffff;
}

.local-fee-table th,
.local-fee-table td
{
	padding: 12px 14px;
	border-right: 1px solid #e5edf3;
	border-bottom: 1px solid #e5edf3;
	vertical-align: middle;
	font-size: 0.76rem;
}

.local-fee-table th:last-child,
.local-fee-table td:last-child
{
	border-right: 0;
}

.local-fee-table thead th
{
	background: #0f6fae;
	color: #ffffff;
	font-size: 0.69rem;
	font-weight: 600;
	letter-spacing: 0.025em;
	text-align: center;
	white-space: nowrap;
}

.local-fee-table thead th:first-child
{
	text-align: left;
}

.local-fee-table tbody td
{
	color: #314d61;
	text-align: center;
}

.local-fee-table tbody td:first-child
{
	color: #173b55;
	text-align: left;
}

.local-fee-table tbody td:first-child strong
{
	font-weight: 600;
}

.local-fee-table tbody tr:nth-child(even)
{
	background: #f8fbfd;
}

.local-fee-table tbody tr:hover
{
	background: #f2f8fc;
}

.local-fee-table tbody td:last-child strong
{
	color: #0b5f95;
	font-weight: 650;
	white-space: nowrap;
}

.local-fee-table tfoot th
{
	padding: 13px 14px;
	border-right: 1px solid #d3e3ee;
	border-bottom: 0;
	background: #eaf5fb;
	color: #173f59;
	font-size: 0.77rem;
	font-weight: 650;
	text-align: center;
}

.local-fee-table tfoot th:first-child
{
	text-align: right;
}

.local-fee-table tfoot th:last-child
{
	border-right: 0;
	color: #0a5d91;
	font-size: 0.83rem;
	white-space: nowrap;
}

.local-fee-actions
{
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	gap: 16px;
	margin: 18px 20px 20px;
	padding-top: 0;
}

.local-fee-grand-total
{
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	min-height: 58px;
	padding: 12px 18px;
	border: 1px solid #0d669d;
	border-radius: 9px;
	background: #0b507d;
	box-shadow: 0 5px 14px rgba(11, 80, 125, 0.13);
}

.local-fee-grand-total span
{
	color: #d9edf9;
	font-size: 0.72rem;
	font-weight: 500;
	letter-spacing: 0.02em;
}

.local-fee-grand-total strong
{
	color: #ffffff;
	font-size: 1.04rem;
	font-weight: 650;
	letter-spacing: 0.01em;
	white-space: nowrap;
}

.local-fee-actions form
{
	display: flex;
	align-items: stretch;
	margin: 0;
}

.local-fee-actions form .portal-btn
{
	min-height: 58px;
	padding-right: 20px;
	padding-left: 20px;
	border-radius: 9px;
	white-space: nowrap;
}

@media (max-width: 760px)
{
	.local-fee-table-wrap
	{
		margin-right: 14px;
		margin-left: 14px;
	}

	.local-fee-actions
	{
		flex-direction: column;
		margin-right: 14px;
		margin-left: 14px;
	}

	.local-fee-actions form .portal-btn
	{
		width: 100%;
	}
}

/* ====================================================================================================
   LOCAL SCOUT + UNIT LEADER TABLES - FIT ALL COLUMNS INSIDE THE PORTAL PANEL
==================================================================================================== */
#scoutTable,
#leaderTable
{
	overflow: hidden;
}

#scoutTable .portal-table-responsive,
#leaderTable .portal-table-responsive
{
	width: 100%;
	max-width: 100%;
	overflow-x: hidden;
	overflow-y: hidden;
	box-sizing: border-box;
	padding-bottom: 17px;
}

#scoutTable .dataTables_wrapper,
#leaderTable .dataTables_wrapper
{
	width: 100%;
	max-width: 100%;
	overflow: visible;
}

#troopScoutTable,
#troopLeaderTable
{
	width: 100%;
	min-width: 0;
	table-layout: auto;
}

#troopScoutTable th,
#troopScoutTable td,
#troopLeaderTable th,
#troopLeaderTable td
{
	padding-right: 3px !important;
	padding-left: 3px !important;
	font-size: 0.59rem !important;
	line-height: 1.32;
	overflow-wrap: anywhere;
	word-break: normal;
	white-space: normal;
}

#troopScoutTable thead th,
#troopLeaderTable thead th
{
	font-size: 0.54rem !important;
	white-space: normal;
}

/* Scout and Unit Leader tables use natural browser column sizing.
   No fixed nth-child column widths are used. */

#troopScoutTable .scout-qr-table-card,
#troopLeaderTable .scout-qr-table-card
{
	width: 100%;
	min-width: 0;
	max-width: 96px;
	padding: 3px 1px;
}

#troopScoutTable .scout-qr-preview,
#troopScoutTable .scout-qr-preview canvas,
#troopLeaderTable .scout-qr-preview,
#troopLeaderTable .scout-qr-preview canvas
{
	width: 62px;
	height: 62px;
}

#troopScoutTable .scout-qr-table-card small,
#troopLeaderTable .scout-qr-table-card small
{
	max-width: 100%;
	font-size: 0.46rem;
}

#troopScoutTable .participant-account-table-badge,
#troopLeaderTable .participant-account-table-badge
{
	min-width: 0;
	max-width: 100%;
	padding-right: 4px;
	padding-left: 4px;
	font-size: 0.49rem;
	white-space: normal;
}

#troopScoutTable .participant-activation-pin,
#troopLeaderTable .participant-activation-pin
{
	font-size: 0.50rem;
}

#troopScoutTable .participant-activation-pin strong,
#troopLeaderTable .participant-activation-pin strong
{
	font-size: 0.60rem;
}

#troopScoutTable .portal-actions-cell,
#troopLeaderTable .portal-actions-cell
{
	min-width: 0;
	white-space: nowrap;
}

#troopScoutTable .portal-action-btn,
#troopLeaderTable .portal-action-btn
{
	width: 22px;
	height: 22px;
	margin: 1px 0;
}

#troopScoutTable .portal-action-btn .portal-icon,
#troopLeaderTable .portal-action-btn .portal-icon
{
	width: 11px;
	height: 11px;
}

@media (max-width: 1050px)
{
	#scoutTable .portal-table-responsive,
	#leaderTable .portal-table-responsive
	{
		overflow-x: auto;
		padding-bottom: 6px;
		-webkit-overflow-scrolling: touch;
	}

	#troopScoutTable,
	#troopLeaderTable
	{
		min-width: 0;
		table-layout: auto;
	}
}

/* ====================================================================================================
   LOCAL LEADER ALLOCATION RULE
==================================================================================================== */
.leader-allocation-rule
{
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 8px;
	margin: 18px 20px 8px;
	padding: 10px;
	border: 1px solid #dbe7ee;
	border-radius: 8px;
	background: #f8fbfd;
}

.leader-allocation-rule > div
{
	min-width: 0;
	padding: 9px 8px;
	border-right: 1px solid #e2ebf0;
	text-align: center;
}

.leader-allocation-rule > div:last-child
{
	border-right: 0;
}

.leader-allocation-rule strong,
.leader-allocation-rule span
{
	display: block;
}

.leader-allocation-rule strong
{
	color: #0b6ca8;
	font-size: 1rem;
}

.leader-allocation-rule span
{
	margin-top: 3px;
	color: #647b8b;
	font-size: 0.62rem;
}

.leader-allocation-warning
{
	border-color: #e7c77a;
	background: #fffaf0;
}

.leader-allocation-message,
.invoice-leader-rule-warning
{
	margin: 8px 20px 14px;
}

/* ====================================================================================================
   REGISTRATION BANK DETAILS
==================================================================================================== */
.registration-bank-details
{
	margin: 16px 20px 4px;
	padding: 14px;
	border: 1px solid #d8e6ef;
	border-radius: 8px;
	background: #f8fcff;
}

.registration-bank-heading
{
	display: flex;
	align-items: flex-start;
	gap: 9px;
	margin-bottom: 11px;
	color: #153d59;
}

.registration-bank-heading .portal-icon
{
	width: 18px;
	height: 18px;
	margin-top: 1px;
	color: #0b79b7;
}

.registration-bank-heading strong,
.registration-bank-heading span
{
	display: block;
}

.registration-bank-heading span
{
	margin-top: 2px;
	color: #6b8090;
	font-size: 0.66rem;
}

.registration-bank-grid
{
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 9px;
}

.registration-bank-grid > div
{
	min-width: 0;
	padding: 9px 10px;
	border: 1px solid #e1ebf1;
	border-radius: 6px;
	background: #ffffff;
}

.registration-bank-grid span,
.registration-bank-grid strong
{
	display: block;
}

.registration-bank-grid span
{
	margin-bottom: 3px;
	color: #728795;
	font-size: 0.58rem;
	font-weight: 650;
	text-transform: uppercase;
}

.registration-bank-grid strong
{
	color: #173f5a;
	font-size: 0.72rem;
	overflow-wrap: anywhere;
}

.registration-bank-pending
{
	padding: 9px 10px;
	border-radius: 6px;
	color: #6a5631;
	font-size: 0.68rem;
	background: #fff6df;
}

@media (max-width: 760px)
{
	.leader-allocation-rule
	{
		grid-template-columns: repeat(2, minmax(0, 1fr));
		margin-right: 14px;
		margin-left: 14px;
	}

	.leader-allocation-rule > div
	{
		border-right: 0;
	}

	.leader-allocation-message,
	.invoice-leader-rule-warning,
	.registration-bank-details
	{
		margin-right: 14px;
		margin-left: 14px;
	}

	.registration-bank-grid
	{
		grid-template-columns: 1fr;
	}
}

/* ====================================================================================================
   LOCAL PAYMENT STATUS / REFERENCE
==================================================================================================== */
.local-payment-overview
{
	display: grid;
	grid-template-columns: 1.35fr repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin: 18px 20px 0;
}

.local-payment-stat
{
	min-width: 0;
	padding: 13px 15px;
	border: 1px solid #d8e6ef;
	border-radius: 8px;
	background: #ffffff;
	box-shadow: 0 3px 10px rgba(17, 66, 99, 0.04);
}

.local-payment-stat span
{
	display: block;
	margin-bottom: 5px;
	color: #6b8090;
	font-size: 0.66rem;
	font-weight: 600;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}

.local-payment-stat strong
{
	display: block;
	overflow: hidden;
	color: #153d59;
	font-size: 0.88rem;
	font-weight: 650;
	line-height: 1.2;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.local-payment-reference-card
{
	border-color: #b9dced;
	background: #f3faff;
}

.local-payment-reference-card strong
{
	color: #0b6ca8;
	font-family: Consolas, Monaco, monospace;
	font-size: 0.82rem;
	letter-spacing: 0.03em;
}

.local-payment-status-row
{
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 12px 20px 0;
	padding: 11px 13px;
	border: 1px solid #e0e9ef;
	border-radius: 8px;
	background: #fbfdfe;
}

.local-payment-status-row p
{
	margin: 0;
	color: #5a7182;
	font-size: 0.7rem;
	line-height: 1.45;
}

.local-payment-status
{
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	min-width: 128px;
	padding: 6px 10px;
	border-radius: 4px;
	font-size: 0.65rem;
	font-weight: 650;
	letter-spacing: 0.025em;
	text-align: center;
}

.local-payment-status-pending
{
	color: #8a5a00;
	background: #fff2d2;
}

.local-payment-status-partial
{
	color: #075e91;
	background: #dff3ff;
}

.local-payment-status-paid
{
	color: #0d6b3d;
	background: #ddf6e9;
}

.local-payment-status-review
{
	color: #9e2c2c;
	background: #fde5e5;
}

.local-payment-status-no_amount
{
	color: #576872;
	background: #edf2f5;
}

@media (max-width: 980px)
{
	.local-payment-overview
	{
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 620px)
{
	.local-payment-overview
	{
		grid-template-columns: 1fr;
		margin-right: 14px;
		margin-left: 14px;
	}

	.local-payment-status-row
	{
		align-items: flex-start;
		flex-direction: column;
		margin-right: 14px;
		margin-left: 14px;
	}
}

/* ====================================================================================================
   TOP PAYMENT STATUS CARD - REGISTRATION PORTAL
==================================================================================================== */
.troop-portal-page .district-slot-cards
{
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.troop-payment-top-card small
{
	display: block;
	margin-top: 4px;
	color: #6b7f8d;
	font-size: 0.61rem;
	font-weight: 500;
	line-height: 1.3;
}

.troop-payment-top-card strong
{
	font-size: 0.86rem !important;
	line-height: 1.2;
}

.troop-payment-top-pending
{
	border-left-color: #e6a018 !important;
}

.troop-payment-top-pending .district-slot-icon
{
	color: #b77500;
	background: #fff3dc;
}

.troop-payment-top-partial
{
	border-left-color: #1684bd !important;
}

.troop-payment-top-partial .district-slot-icon
{
	color: #0b6d9f;
	background: #e2f4fd;
}

.troop-payment-top-paid
{
	border-left-color: #22a26a !important;
}

.troop-payment-top-paid .district-slot-icon
{
	color: #168451;
	background: #e2f7ed;
}

.troop-payment-top-review
{
	border-left-color: #d9534f !important;
}

.troop-payment-top-review .district-slot-icon
{
	color: #b13c39;
	background: #fde8e7;
}

.troop-payment-top-no_amount
{
	border-left-color: #87949c !important;
}

.troop-payment-top-no_amount .district-slot-icon
{
	color: #65747d;
	background: #edf2f5;
}

@media (max-width: 1080px)
{
	.troop-portal-page .district-slot-cards
	{
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 620px)
{
	.troop-portal-page .district-slot-cards
	{
		grid-template-columns: 1fr;
	}
}

/* ====================================================================================================
   PARTICIPANT ACCOUNT ACTIVATION - LOCAL YPL
==================================================================================================== */
.portal-action-key
{
	background: #d49316;
}

.participant-account-table-badge
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 76px;
	padding: 3px 7px;
	border-radius: 3px;
	font-size: 0.58rem;
	font-weight: 850;
	letter-spacing: 0.03em;
}

.participant-account-table-active
{
	color: #14623b;
	background: #e3f6eb;
}

.participant-account-table-locked
{
	color: #805a0b;
	background: #fff2c8;
}

.participant-account-table-blocked
{
	color: #8d3030;
	background: #fde8e8;
}

.participant-account-table-pending
{
	color: #73520d;
	background: #fff3c9;
}

.participant-account-table-not-created
{
	color: #5f7080;
	background: #edf2f5;
}

.participant-activation-pin
{
	margin-bottom: 4px;
	font-family: Consolas, Monaco, monospace;
	font-size: 0.62rem;
	color: #465f73;
}

.participant-activation-pin strong
{
	font-size: 0.76rem;
	letter-spacing: 0.08em;
	color: #0b6fb9;
}

.participant-activation-modal-code
{
	margin: 8px 0;
	font-family: Consolas, Monaco, monospace;
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.03em;
	color: #315a79;
}

.participant-activation-modal-pin
{
	display: inline-block;
	margin: 4px 0 14px;
	padding: 9px 16px;
	border: 1px dashed #70a9ce;
	border-radius: 6px;
	background: #eef8fd;
	font-family: Consolas, Monaco, monospace;
	font-size: 1.4rem;
	font-weight: 900;
	letter-spacing: 0.16em;
	color: #086dac;
}


/* Participant Code / Activation PIN copy buttons */
.portal-copy-visible
{
	color: #ffffff !important;
	background: var(--jmb-green) !important;
	box-shadow: 0 1px 3px rgba(8, 75, 131, 0.22);
}

.portal-copy-visible:hover,
.portal-copy-visible:focus
{
	color: #ffffff !important;
	background: var(--jmb-green-dark) !important;
}


/* ====================================================================================================
   REGISTRATION LIST HEADING CONTEXT + CONSISTENT COPY / PIN CONTROLS
==================================================================================================== */
.portal-list-heading-row
{
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}

.portal-list-heading-row h3
{
	margin: 0;
}

.portal-list-context
{
	display: inline-flex;
	align-items: center;
	min-height: 25px;
	padding: 4px 9px;
	border: 1px solid #b8ddec;
	border-radius: 14px;
	background: #eef9fd;
	color: #205a78;
	font-size: 0.61rem;
	font-weight: 700;
	line-height: 1.2;
}

.participant-copy-block,
.participant-pin-copy-block
{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	min-width: 0;
}

.participant-copy-value
{
	max-width: 100%;
	font-family: Consolas, Monaco, monospace;
	font-size: 0.62rem;
	line-height: 1.25;
	overflow-wrap: anywhere;
}

.portal-mini-icon.portal-copy-visible.participant-copy-button
{
	width: auto;
	height: 23px;
	min-width: 50px;
	padding: 0 7px;
	gap: 4px;
	border-radius: 4px;
	color: #ffffff !important;
	background: var(--jmb-green) !important;
	font-size: 0.52rem;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
}

.portal-mini-icon.portal-copy-visible.participant-copy-button .portal-icon
{
	width: 11px;
	height: 11px;
}

.participant-pin-copy-block .participant-activation-pin
{
	margin-bottom: 0;
}

.participant-pin-generate-form
{
	margin: 0;
}

.participant-pin-generate-button
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	min-height: 23px;
	padding: 3px 7px;
	border: 0;
	border-radius: 4px;
	color: #ffffff;
	background: #d49316;
	font-size: 0.50rem;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
	white-space: nowrap;
}

.participant-pin-generate-button:hover,
.participant-pin-generate-button:focus
{
	background: #b97908;
}

.participant-pin-generate-button .portal-icon
{
	width: 11px;
	height: 11px;
}

/* Participant Code / PIN copy button - same compact size as table action icons */
.portal-mini-icon.portal-copy-visible.participant-copy-button
{
	width: 22px;
	height: 22px;
	min-width: 22px;
	padding: 0;
	margin: 1px 0;
	gap: 0;
	border-radius: 4px;
	align-items: center;
	justify-content: center;
}

.portal-mini-icon.portal-copy-visible.participant-copy-button .portal-icon
{
	width: 11px;
	height: 11px;
	margin: 0;
}

/* =================================================================================================
   LOCAL UNIT LEADER NIC DUPLICATE CHECK
================================================================================================= */
.leader-nic-status
{
	display: block;
	min-height: 17px;
	margin-top: 5px;
	line-height: 1.35;
}

.leader-nic-checking
{
	color: #075f87 !important;
}

.leader-nic-available
{
	color: #177a2b !important;
	font-weight: 750 !important;
}

.leader-nic-unavailable
{
	color: #a31326 !important;
	font-weight: 750 !important;
}

/* ====================================================================================================
   PARTICIPANT PASSWORD RESET ACTION
==================================================================================================== */
.portal-action-reset
{
	background: #6f42c1;
}

.portal-action-reset:hover,
.portal-action-reset:focus
{
	background: #59339f;
}

.participant-reset-route-note
{
	margin: 12px 0 0;
	padding: 9px 11px;
	border-radius: 6px;
	background: #f2f6fa;
	color: #405363;
	font-size: 0.72rem;
	line-height: 1.45;
}

