/*
 * AnticiClic front-end account bundle.
 *
 * 1. Header, account navigation and notifications
 * 2. Authentication cards and forms
 * 3. Personal space and service access
 * 4. Professional picker
 * 5. Protocol workspace
 * 6. Responsive adjustments
 *
 * Keep this file as the single WordPress asset so Divi receives the same
 * cascade and request order. New rules belong in the matching section.
 */

:root {
	--ach-auth-ink: #073f3d;
	--ach-auth-muted: #52706f;
	--ach-auth-teal: #075b57;
	--ach-auth-mint: #dff2ef;
	--ach-auth-coral: #ff7a69;
	--ach-auth-paper: #fffdf8;
	--ach-sticky-header-offset: 0px;
}

@view-transition {
	navigation: auto;
}

::view-transition-old(root),
::view-transition-new(root) {
	animation-duration: .14s;
	animation-timing-function: ease-out;
}

.ach-quiet-status {
	position: fixed;
	right: 22px;
	bottom: 22px;
	z-index: 1000000;
	box-sizing: border-box;
	max-width: min(420px, calc(100vw - 32px));
	padding: 12px 16px;
	border: 1px solid transparent;
	border-radius: 12px;
	box-shadow: 0 14px 38px rgba(7, 63, 61, .2);
	font-size: 14px;
	font-weight: 750;
	line-height: 1.4;
	opacity: 0;
	pointer-events: none;
	transform: translateY(10px);
	transition: opacity .16s ease, transform .16s ease;
}

.ach-quiet-status.is-visible {
	opacity: 1;
	transform: translateY(0);
}

.ach-quiet-status.is-success {
	border-color: #8fcac4;
	background: #e8f7f4;
	color: #075b57;
}

.ach-quiet-status.is-error {
	border-color: #e7b8b1;
	background: #fff5f3;
	color: #8f392f;
}

[data-anticiclic-quiet-submit][aria-busy="true"] button[type="submit"] {
	opacity: .62;
	cursor: wait;
}

@media (prefers-reduced-motion: reduce) {
	::view-transition-old(root),
	::view-transition-new(root) {
		animation-duration: 0s;
	}

	.ach-quiet-status {
		transition: none;
	}
}

@media (min-width: 981px) {
	#main-header #top-menu > li.ach-header-nav-link > a,
	#main-header #top-menu > li.ach-header-protocol-use.menu-item-has-children {
		display: inline-flex;
		align-items: center;
		min-height: 42px;
		padding: 0 12px !important;
		border-radius: 12px;
		background: transparent;
		color: #dff2ef !important;
		transition: background-color .18s ease;
	}

	#main-header #top-menu > li.ach-header-protocol-use.menu-item-has-children {
		position: relative;
		margin-right: 12px;
		padding: 0;
		background: var(--ach-auth-coral);
	}

	#main-header #top-menu > li.ach-header-nav-link.current-menu-item > a,
	#main-header #top-menu > li.ach-header-nav-link > a:hover {
		background: rgba(255, 255, 255, .12);
		color: #fff9ee !important;
	}

	#main-header #top-menu > li.ach-header-protocol-use.menu-item-has-children:hover,
	#main-header #top-menu > li.ach-header-protocol-use.menu-item-has-children:focus-within,
	#main-header #top-menu > li.ach-header-protocol-use.menu-item-has-children.is-open,
	#main-header #top-menu > li.ach-header-protocol-use.menu-item-has-children.current-menu-ancestor {
		background: #ff9689;
		color: var(--ach-auth-ink) !important;
	}

	#main-header .ach-header-protocol-use__toggle {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 8px;
		height: 42px;
		box-sizing: border-box;
		padding: 0 12px;
		border: 0;
		border-radius: 12px;
		background: transparent;
		color: var(--ach-auth-ink);
		font: inherit;
		font-weight: 700;
		cursor: pointer;
	}

	#main-header .ach-header-protocol-use__toggle:hover,
	#main-header .ach-header-protocol-use__toggle:focus-visible {
		color: var(--ach-auth-ink);
		outline: none;
	}

	#main-header .ach-header-protocol-use__toggle svg {
		width: 14px;
		height: 14px;
		fill: none;
		stroke: currentColor;
		stroke-width: 2.5;
		stroke-linecap: round;
		stroke-linejoin: round;
		transition: transform .16s ease;
	}

	#main-header .ach-header-protocol-use.is-open > .ach-header-protocol-use__toggle svg {
		transform: rotate(180deg);
	}

	#main-header #top-menu > li.ach-header-protocol-use > .sub-menu {
		top: calc(100% + 8px);
		left: 0;
		width: 280px;
		padding: 8px;
		border: 1px solid #cfe3e0;
		border-top: 3px solid var(--ach-auth-coral);
		border-radius: 0 0 14px 14px;
		background: var(--ach-auth-paper);
		box-shadow: 0 18px 42px rgba(2, 44, 42, .18);
		transform: translateY(-4px);
		transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
	}

	#main-header #top-menu > li.ach-header-protocol-use:hover > .sub-menu,
	#main-header #top-menu > li.ach-header-protocol-use.is-open > .sub-menu {
		visibility: visible;
		opacity: 1;
		transform: translateY(0);
	}

	#main-header #top-menu > li.ach-header-protocol-use > .sub-menu > li {
		width: 100%;
		padding: 0;
	}

	#main-header #top-menu > li.ach-header-protocol-use > .sub-menu > li > a {
		display: block;
		width: auto;
		padding: 10px 12px;
		border-radius: 9px;
		color: var(--ach-auth-ink) !important;
		font-size: 14px;
		font-weight: 650;
		line-height: 1.25;
	}

	#main-header #top-menu > li.ach-header-protocol-use > .sub-menu > li > a:hover,
	#main-header #top-menu > li.ach-header-protocol-use > .sub-menu > li > a:focus,
	#main-header #top-menu > li.ach-header-protocol-use > .sub-menu > li.current-menu-item > a {
		background: #eaf7f4;
		color: var(--ach-auth-teal) !important;
	}

	#main-header.et-fixed-header #top-menu > li.ach-header-nav-link > a,
	#main-header.et-fixed-header #top-menu > li.ach-header-protocol-use {
		min-height: 38px;
		border-radius: 10px;
	}

	#main-header.et-fixed-header .ach-header-protocol-use__toggle {
		height: 38px;
		border-radius: 10px;
	}
}

#main-header #top-menu .ach-header-account {
	padding-right: 8px;
	vertical-align: top;
}

#main-header #top-menu > li.ach-header-notifications {
	position: relative;
	padding-right: 8px;
}

#main-header .ach-header-notifications__toggle {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	padding: 0;
	border: 1px solid rgba(255, 249, 238, .32);
	border-radius: 12px;
	background: rgba(255, 255, 255, .06);
	color: #fff9ee;
	font: inherit;
	cursor: pointer;
	transition: background-color .18s ease, border-color .18s ease, transform .18s ease;
}

#main-header .ach-header-notifications__toggle:hover,
#main-header .ach-header-notifications__toggle:focus-visible,
#main-header .ach-header-notifications.is-open .ach-header-notifications__toggle {
	border-color: #fff9ee;
	background: rgba(255, 255, 255, .13);
	transform: translateY(-1px);
}

.ach-header-notifications__icon {
	width: 20px;
	height: 20px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ach-header-notifications__label {
	display: none;
}

.ach-header-notifications__badge {
	position: absolute;
	top: -5px;
	right: -5px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 18px;
	height: 18px;
	padding: 0 4px;
	border: 2px solid var(--ach-auth-teal);
	border-radius: 999px;
	background: var(--ach-auth-coral);
	color: var(--ach-auth-ink);
	font-size: 10px;
	font-weight: 850;
	line-height: 1;
}

.ach-header-notifications__panel[hidden],
.ach-header-notifications__backdrop[hidden],
.ach-header-notifications__badge[hidden],
.ach-header-notifications__heading [hidden],
.ach-header-notifications__empty[hidden] {
	display: none !important;
}

#main-header .ach-header-notifications__list[hidden] {
	display: none !important;
}

body.ach-notifications-open {
	overflow: hidden;
}

.ach-header-notifications__backdrop {
	position: fixed;
	z-index: 100000;
	inset: 0;
	width: 100vw;
	height: 100vh;
	height: 100dvh;
	padding: 0;
	border: 0;
	background: rgba(2, 35, 34, .42);
	cursor: default;
	animation: ach-notifications-fade-in .16s ease-out;
}

#main-header .ach-header-notifications__panel {
	position: fixed;
	z-index: 100001;
	inset: 0 0 0 auto;
	display: grid;
	grid-template-rows: auto minmax(0, 1fr);
	width: min(440px, 100vw);
	height: 100vh;
	height: 100dvh;
	overflow: hidden;
	border: 0;
	border-left: 1px solid #cfe3e0;
	border-radius: 0;
	background: var(--ach-auth-paper);
	box-shadow: -18px 0 42px rgba(2, 44, 42, .2);
	color: var(--ach-auth-ink);
	text-align: left;
	animation: ach-notifications-slide-in .2s ease-out;
}

.admin-bar .ach-header-notifications__backdrop,
.admin-bar #main-header .ach-header-notifications__panel {
	top: 32px;
	height: calc(100vh - 32px);
	height: calc(100dvh - 32px);
}

@keyframes ach-notifications-fade-in {
	from { opacity: 0; }
	to { opacity: 1; }
}

@keyframes ach-notifications-slide-in {
	from { transform: translateX(24px); opacity: .6; }
	to { transform: translateX(0); opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
	.ach-header-notifications__backdrop,
	#main-header .ach-header-notifications__panel {
		animation: none;
	}
}

.ach-header-notifications__heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 72px;
	padding: max(14px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) 14px 18px;
	border-bottom: 1px solid #dce9e7;
	background: #eaf7f4;
}

.ach-header-notifications__heading-copy {
	display: grid;
	gap: 2px;
}

.ach-header-notifications__heading strong {
	color: var(--ach-auth-ink);
	font-size: 20px;
	font-weight: 800;
}

.ach-header-notifications__heading [data-notification-unread-label] {
	color: var(--ach-auth-teal);
	font-size: 12px;
	font-weight: 750;
}

.ach-header-notifications__heading-actions {
	display: flex;
	align-items: center;
	gap: 6px;
}

.ach-header-notifications__clear,
.ach-header-notifications__close,
.ach-header-notifications__dismiss {
	font: inherit;
	cursor: pointer;
}

.ach-header-notifications__clear {
	padding: 7px 8px;
	border: 0;
	border-radius: 8px;
	background: transparent;
	color: var(--ach-auth-teal);
	font-size: 12px;
	font-weight: 800;
}

.ach-header-notifications__clear:hover,
.ach-header-notifications__clear:focus-visible {
	background: rgba(13, 134, 128, .1);
}

.ach-header-notifications__close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	padding: 0;
	border: 1px solid #badbd7;
	border-radius: 10px;
	background: #fffdf8;
	color: var(--ach-auth-ink);
}

.ach-header-notifications__close:hover,
.ach-header-notifications__close:focus-visible {
	border-color: #0d8680;
	background: #fff;
	color: var(--ach-auth-teal);
}

.ach-header-notifications__close svg,
.ach-header-notifications__dismiss svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ach-header-notifications__body {
	min-height: 0;
	overflow-y: auto;
	overscroll-behavior: contain;
	scrollbar-width: thin;
}

#main-header .ach-header-notifications__list {
	position: static !important;
	display: block !important;
	visibility: visible !important;
	width: auto !important;
	max-height: none;
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible;
	border: 0 !important;
	background: transparent !important;
	opacity: 1 !important;
	box-shadow: none !important;
	list-style: none;
	transform: none !important;
}

#main-header .ach-header-notifications__item {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 46px;
	align-items: stretch;
	width: 100%;
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #e2ecea;
}

#main-header .ach-header-notifications__item:last-child {
	border-bottom: 0;
}

#main-header #top-menu .ach-header-notifications__item > a[data-notification-link],
#main-header .et_mobile_menu .ach-header-notifications__item > a[data-notification-link] {
	display: grid;
	grid-template-columns: 9px minmax(0, 1fr);
	gap: 11px;
	width: auto;
	padding: 15px 10px 15px 18px !important;
	background: #fffdf8;
	color: var(--ach-auth-ink) !important;
	line-height: 1.3;
	transition: background-color .15s ease;
}

#main-header #top-menu .ach-header-notifications__item.is-unread > a[data-notification-link],
#main-header .et_mobile_menu .ach-header-notifications__item.is-unread > a[data-notification-link] {
	background: #f0faf8;
}

#main-header #top-menu .ach-header-notifications__item > a[data-notification-link]:hover,
#main-header #top-menu .ach-header-notifications__item > a[data-notification-link]:focus-visible,
#main-header .et_mobile_menu .ach-header-notifications__item > a[data-notification-link]:hover,
#main-header .et_mobile_menu .ach-header-notifications__item > a[data-notification-link]:focus-visible {
	background: #e7f5f2;
	color: var(--ach-auth-teal) !important;
}

.ach-header-notifications__dismiss {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	margin: auto 8px auto 4px;
	padding: 0;
	border: 0;
	border-radius: 9px;
	background: transparent;
	color: #6b8583;
}

.ach-header-notifications__dismiss:hover,
.ach-header-notifications__dismiss:focus-visible {
	background: #f9e9e5;
	color: #a44d42;
}

.ach-header-notifications__clear:disabled,
.ach-header-notifications__dismiss:disabled {
	opacity: .48;
	cursor: wait;
}

.ach-header-notifications__marker {
	width: 8px;
	height: 8px;
	margin-top: 5px;
	border-radius: 999px;
	background: #9db2b0;
	opacity: 0;
}

.ach-header-notifications__item.is-unread .ach-header-notifications__marker {
	opacity: 1;
}

.ach-header-notifications__item--pending .ach-header-notifications__marker,
.ach-header-notifications__item--review .ach-header-notifications__marker {
	background: #d9a63d;
}

.ach-header-notifications__item--success .ach-header-notifications__marker {
	background: #168f79;
}

.ach-header-notifications__item--rejected .ach-header-notifications__marker {
	background: #c96e60;
}

.ach-header-notifications__copy {
	display: grid;
	gap: 2px;
	min-width: 0;
}

#main-header #top-menu .ach-header-notifications__copy > strong,
#main-header .et_mobile_menu .ach-header-notifications__copy > strong {
	color: #073f3d !important;
	font-size: 13px;
	font-weight: 800;
}

#main-header #top-menu .ach-header-notifications__copy > span,
#main-header .et_mobile_menu .ach-header-notifications__copy > span {
	overflow-wrap: anywhere;
	color: #365f5d !important;
	font-size: 12px;
}

#main-header #top-menu .ach-header-notifications__copy > small,
#main-header .et_mobile_menu .ach-header-notifications__copy > small {
	color: #52706f !important;
	font-size: 10px;
}

.ach-header-notifications__empty {
	margin: 0;
	padding: 48px 24px;
	color: var(--ach-auth-muted);
	font-size: 14px;
	text-align: center;
}

.ach-header-notifications__status {
	margin: 0;
	padding: 0 18px max(16px, env(safe-area-inset-bottom));
	color: #a44d42;
	font-size: 12px;
	font-weight: 700;
}

#main-header #top-menu .ach-header-account > a,
#main-header #top-menu .ach-header-account > button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 0 17px !important;
	border: 1px solid rgba(255, 249, 238, .42);
	border-radius: 12px;
	background: transparent;
	color: inherit;
	cursor: pointer;
	font: inherit;
	font-weight: 750;
	line-height: 1;
	transition: background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}

#main-header #top-menu .ach-header-account--primary > a {
	border-color: var(--ach-auth-coral);
	background: var(--ach-auth-coral);
	color: var(--ach-auth-ink) !important;
}

#main-header #top-menu .ach-header-account--secondary > a:hover,
#main-header #top-menu .ach-header-account--secondary > button:hover {
	border-color: #fff9ee;
	background: rgba(255, 255, 255, .08);
	color: #fff9ee !important;
}

#main-header #top-menu .ach-header-account--account {
	padding-right: 0;
}

#main-header #top-menu .ach-header-account--account > a {
	border-right: 0;
	border-radius: 12px 0 0 12px;
}

#main-header #top-menu .ach-header-account--logout {
	margin-left: -1px;
}

#main-header #top-menu .ach-header-account--logout > a,
#main-header #top-menu .ach-header-account--logout > button {
	width: 48px;
	padding-right: 0 !important;
	padding-left: 0 !important;
	border-radius: 0 12px 12px 0;
	color: #b8d8d4 !important;
}

.ach-header-account__icon {
	width: 20px;
	height: 20px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ach-header-logout__dialog {
	width: min(calc(100% - 32px), 520px);
	max-width: 520px;
	margin: auto;
	padding: 0;
	border: 1px solid #c5dedb;
	border-radius: 20px;
	background: #fffdf9;
	color: var(--ach-auth-ink);
	box-shadow: 0 26px 80px rgba(5, 64, 61, .28);
}

.ach-header-logout__dialog::backdrop {
	background: rgba(3, 42, 40, .58);
	backdrop-filter: blur(3px);
}

.ach-header-logout__surface {
	position: relative;
	padding: clamp(28px, 4vw, 40px);
	text-align: left;
}

.ach-header-logout__surface h2 {
	margin: 0 42px 10px 0;
	padding: 0;
	color: var(--ach-auth-ink);
	font-size: clamp(23px, 3vw, 30px);
	line-height: 1.2;
}

.ach-header-logout__surface > p:not(.ach-header-logout__eyebrow) {
	margin: 0;
	padding: 0;
	color: var(--ach-auth-muted);
	font-size: 15px;
	line-height: 1.55;
}

.ach-header-logout__eyebrow {
	margin: 0 0 8px;
	padding: 0;
	color: var(--ach-auth-teal);
	font-size: 12px;
	font-weight: 850;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.ach-header-logout__close {
	position: absolute;
	top: 20px;
	right: 20px;
	display: inline-grid;
	place-items: center;
	width: 38px;
	height: 38px;
	padding: 0;
	border: 1px solid #c5dedb;
	border-radius: 50%;
	background: #fff;
	color: var(--ach-auth-muted);
	cursor: pointer;
	font: inherit;
	font-size: 25px;
	line-height: 1;
}

.ach-header-logout__actions {
	display: grid;
	gap: 10px;
	margin-top: 24px;
}

.ach-header-logout__actions form {
	margin: 0;
	padding: 0;
}

.ach-header-logout__actions a,
.ach-header-logout__actions button,
.ach-header-logout__cancel {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 48px;
	padding: 11px 18px;
	border-radius: 12px;
	cursor: pointer;
	font: inherit;
	font-weight: 800;
	line-height: 1.2;
	text-align: center;
}

.ach-header-logout__actions a {
	border: 1px solid var(--ach-auth-teal);
	background: var(--ach-auth-teal);
	color: #fff !important;
}

.ach-header-logout__actions button {
	border: 1px solid #e5aaa3;
	background: #fff;
	color: #a23f35;
}

.ach-confirm-dialog__actions .ach-confirm-dialog__confirm {
	border-color: var(--ach-auth-teal);
	background: var(--ach-auth-teal);
	color: #fff;
}

.ach-confirm-dialog__actions .ach-confirm-dialog__confirm--danger {
	border-color: var(--ach-auth-coral);
	background: var(--ach-auth-coral);
	color: var(--ach-auth-ink);
}

.ach-header-logout__cancel {
	min-height: 40px;
	margin-top: 8px;
	border: 0;
	background: transparent;
	color: var(--ach-auth-muted);
}

.ach-header-logout__close:hover,
.ach-header-logout__cancel:hover {
	color: var(--ach-auth-ink);
}

.ach-visually-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
	clip-path: inset(50%) !important;
	border: 0 !important;
	white-space: nowrap !important;
}

#main-header #top-menu .ach-header-account--primary > a:hover {
	border-color: #ff9a8d;
	background: #ff9a8d;
	color: var(--ach-auth-ink) !important;
}

#main-header #top-menu .ach-header-account > a:hover,
#main-header #top-menu .ach-header-account > button:hover {
	transform: translateY(-1px);
}

@media (min-width: 981px) {
	#main-header.et-fixed-header .ach-header-notifications__toggle {
		width: 38px;
		height: 38px;
		border-radius: 10px;
	}

	#main-header.et-fixed-header .ach-header-notifications__icon {
		width: 18px;
		height: 18px;
	}

	#main-header.et-fixed-header #top-menu .ach-header-account > a,
	#main-header.et-fixed-header #top-menu .ach-header-account > button {
		min-height: 38px;
		padding-right: 14px !important;
		padding-left: 14px !important;
		border-radius: 10px;
	}

	#main-header.et-fixed-header #top-menu .ach-header-account--account > a {
		border-radius: 10px 0 0 10px;
	}

	#main-header.et-fixed-header #top-menu .ach-header-account--logout > a,
	#main-header.et-fixed-header #top-menu .ach-header-account--logout > button {
		width: 42px;
		padding-right: 0 !important;
		padding-left: 0 !important;
		border-radius: 0 10px 10px 0;
	}

	#main-header.et-fixed-header .ach-header-account__icon {
		width: 18px;
		height: 18px;
	}
}

#main-header .et_mobile_menu .ach-header-account {
	margin: 8px 18px;
}

#main-header .et_mobile_menu .ach-header-notifications {
	display: block;
	margin: 8px 18px;
	padding: 0;
}

#main-header .et_mobile_menu .ach-header-notifications__toggle {
	justify-content: flex-start;
	gap: 9px;
	width: 100%;
	height: auto;
	min-height: 44px;
	padding: 10px 14px;
	border-color: #badbd7;
	background: #fff;
	color: var(--ach-auth-ink);
}

#main-header .et_mobile_menu .ach-header-notifications__label {
	display: inline;
	font-weight: 750;
}

#main-header .et_mobile_menu .ach-header-notifications__badge {
	position: static;
	margin-left: auto;
	border-color: #fff;
}

#main-header .et_mobile_menu .ach-header-notifications__item > a {
	display: grid;
	padding: 14px 8px 14px 16px !important;
	color: var(--ach-auth-ink) !important;
}

@media (max-width: 782px) {
	.admin-bar .ach-header-notifications__backdrop,
	.admin-bar #main-header .ach-header-notifications__panel {
		top: 46px;
		height: calc(100vh - 46px);
		height: calc(100dvh - 46px);
	}
}

#main-header .et_mobile_menu .ach-header-protocol-use > .sub-menu {
	display: none !important;
	padding: 4px 0 6px 14px !important;
	background: transparent !important;
}

#main-header .et_mobile_menu .ach-header-protocol-use.is-open > .sub-menu {
	display: block !important;
}

#main-header .et_mobile_menu .ach-header-protocol-use,
#main-header .et_mobile_menu .ach-header-nav-link {
	position: relative;
	margin: 8px 18px;
	border: 1px solid #badbd7;
	border-radius: 11px;
	background: #fff;
}

#main-header .et_mobile_menu .ach-header-nav-link > a {
	padding: 12px 16px !important;
	border-radius: 11px;
	color: var(--ach-auth-ink) !important;
	font-weight: 750;
}

#main-header .et_mobile_menu .ach-header-protocol-use__toggle {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 44px;
	padding: 0 14px;
	border: 0;
	border-radius: 11px;
	background: #f4faf9;
	color: var(--ach-auth-teal);
	font: inherit;
	font-weight: 750;
}

#main-header .et_mobile_menu .ach-header-protocol-use__toggle svg {
	width: 16px;
	height: 16px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2.5;
	stroke-linecap: round;
	stroke-linejoin: round;
	transition: transform .16s ease;
}

#main-header .et_mobile_menu .ach-header-protocol-use.is-open > .ach-header-protocol-use__toggle svg {
	transform: rotate(180deg);
}

#main-header .et_mobile_menu .ach-header-protocol-use > .sub-menu > li > a {
	padding: 9px 14px;
	border-left: 2px solid #badbd7;
	color: var(--ach-auth-ink) !important;
	font-size: 14px;
}

#main-header .et_mobile_menu .ach-header-protocol-use > .sub-menu > li.current-menu-item > a {
	border-left-color: var(--ach-auth-coral);
	background: #eaf7f4;
}

#main-header .et_mobile_menu .ach-header-account > a,
#main-header .et_mobile_menu .ach-header-account > button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	border: 1px solid #badbd7;
	border-radius: 11px;
	padding: 12px 16px;
	background: transparent;
	color: inherit;
	cursor: pointer;
	font: inherit;
	text-align: center;
}

#main-header .et_mobile_menu .ach-header-account--primary > a {
	border-color: var(--ach-auth-coral);
	background: var(--ach-auth-coral);
	color: var(--ach-auth-ink) !important;
}

#main-header .et_mobile_menu .ach-header-account--account {
	margin-bottom: 0;
}

#main-header .et_mobile_menu .ach-header-account--account > a {
	border-bottom: 0;
	border-radius: 11px 11px 0 0;
}

#main-header .et_mobile_menu .ach-header-account--logout {
	margin-top: 0;
}

#main-header .et_mobile_menu .ach-header-account--logout > a,
#main-header .et_mobile_menu .ach-header-account--logout > button {
	display: flex;
	justify-content: center;
	border-radius: 0 0 11px 11px;
	color: var(--ach-auth-muted) !important;
}

.anticiclic-account-page #main-content {
	background: linear-gradient(145deg, #f7f4ed 0%, #fffdf8 55%, #eaf7f4 100%);
}

.ach-account-page {
	min-height: 0;
	padding: clamp(56px, 5vw, 84px) 0 !important;
	background: transparent !important;
}

.ach-account-page .et_pb_row {
	display: grid;
	grid-template-columns: minmax(0, .82fr) minmax(420px, 1.18fr);
	gap: clamp(48px, 7vw, 110px);
	align-items: center;
	width: min(calc(100% - 64px), 1260px) !important;
	max-width: 1260px !important;
}

.anticiclic-login-page .ach-account-page,
.anticiclic-registration-page .ach-account-page {
	padding: clamp(40px, 5vw, 68px) 0 !important;
}

.anticiclic-login-page .ach-account-page .et_pb_row,
.anticiclic-registration-page .ach-account-page .et_pb_row {
	display: block;
	width: min(calc(100% - 40px), 900px) !important;
	max-width: 900px !important;
}

.anticiclic-login-page .ach-account-intro,
.anticiclic-registration-page .ach-account-intro {
	display: none !important;
}

.anticiclic-login-page .ach-account-form,
.anticiclic-registration-page .ach-account-form {
	width: 100% !important;
}

.ach-account-intro,
.ach-account-form {
	width: auto !important;
	margin: 0 !important;
}

.anticiclic-professional-space .ach-account-page .et_pb_row {
	display: block;
	width: min(calc(100% - 48px), 1440px) !important;
	max-width: 1440px !important;
}

.anticiclic-professional-space .ach-account-intro {
	display: none !important;
}

.anticiclic-professional-space .ach-account-form {
	width: 100% !important;
}

.ach-account-intro .et_pb_text_inner {
	color: var(--ach-auth-muted);
}

.ach-account-intro .ach-account-kicker {
	margin: 0 0 18px;
	color: #0d8680;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.ach-account-intro h1 {
	margin: 0 0 24px;
	padding: 0;
	color: var(--ach-auth-ink);
	font-size: clamp(42px, 5vw, 68px);
	font-weight: 800;
	letter-spacing: -.045em;
	line-height: .98;
}

.ach-account-intro p:not(.ach-account-kicker) {
	max-width: 560px;
	font-size: 18px;
	line-height: 1.65;
}

.ach-account-intro .ach-account-public-note {
	margin-top: 28px;
	padding: 17px 19px;
	border-left: 3px solid var(--ach-auth-coral);
	border-radius: 0 10px 10px 0;
	background: rgba(255, 255, 255, .66);
	color: var(--ach-auth-ink);
	font-size: 15px;
}

.ach-account-doctor {
	width: 100%;
	max-width: 560px;
	margin: 24px 0 0 !important;
	padding: 15px 17px;
	border: 1px solid #d8e4e2;
	border-top: 3px solid var(--ach-auth-coral);
	border-radius: 16px;
	background: rgba(255, 255, 255, .78);
	box-shadow: 0 14px 38px rgba(7, 63, 61, .08);
}

.ach-account-doctor .et_pb_blurb_content {
	display: grid;
	grid-template-columns: 76px minmax(0, 1fr);
	align-items: center;
	gap: 15px;
	max-width: none;
}

.ach-account-doctor .et_pb_main_blurb_image {
	width: 76px;
	margin: 0;
}

.ach-account-doctor .et_pb_image_wrap {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	width: 72px;
	height: 78px;
	border: 1px solid #d8e4e2;
	border-radius: 13px;
	background: #eaf5f2;
	overflow: hidden;
}

.ach-account-doctor .et_pb_image_wrap img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center bottom;
}

.ach-account-doctor .et_pb_module_header {
	padding: 0 0 5px;
	color: var(--ach-auth-ink) !important;
	font-size: 17px;
	font-weight: 800;
	line-height: 1.2;
}

.ach-account-doctor .et_pb_blurb_description p {
	margin: 0;
	color: var(--ach-auth-muted) !important;
	font-size: 13px;
	line-height: 1.45;
}

/* 2. Authentication cards and forms. */

.ach-auth-card {
	padding: clamp(28px, 4vw, 48px);
	border: 1px solid #d8e4e2;
	border-top: 4px solid var(--ach-auth-coral);
	border-radius: 22px;
	background: rgba(255, 255, 255, .94);
	box-shadow: 0 24px 65px rgba(7, 63, 61, .12);
	color: var(--ach-auth-muted);
}

.anticiclic-login-page .ach-auth-card,
.anticiclic-registration-page .ach-auth-card {
	padding: clamp(28px, 4vw, 38px);
	border-top-width: 3px;
	border-radius: 20px;
	box-shadow: 0 20px 52px rgba(7, 63, 61, .1);
}

.ach-auth-login__header,
.ach-auth-registration__header {
	margin-bottom: 24px;
}

.ach-auth-login__header h1,
.ach-auth-registration__header h1 {
	margin: 0;
	padding: 0;
	color: var(--ach-auth-ink);
	font-size: clamp(29px, 3vw, 35px);
	font-weight: 800;
	letter-spacing: -.035em;
	line-height: 1.05;
}

.ach-auth-login__methods,
.ach-auth-registration__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(250px, 280px);
	align-items: stretch;
	gap: clamp(24px, 3vw, 32px);
}

.ach-auth-login__primary,
.ach-auth-registration__primary {
	min-width: 0;
}

.ach-auth-registration__waiting {
	display: grid;
	align-content: center;
	min-height: 150px;
	padding: 22px;
	border: 1px solid #d8e4e2;
	border-radius: 14px;
	background: #f4f8f7;
}

.ach-auth-registration__waiting strong {
	color: var(--ach-auth-ink);
	font-size: 16px;
}

.ach-auth-registration__waiting p {
	margin: 7px 0 0;
	color: var(--ach-auth-muted);
	font-size: 14px;
	line-height: 1.5;
}

.ach-auth-psc {
	display: grid;
	justify-items: center;
	gap: 8px;
	margin: 0 0 18px;
}

.ach-auth-psc__button {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	min-height: 116px;
	padding: 15px 22px;
	border: 2px solid #8a9295;
	border-radius: 22px;
	background: #f4f6fa;
	color: #2d3437;
	box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .82);
	cursor: not-allowed;
	opacity: .72;
}

.ach-auth-psc__button img {
	flex: 0 0 auto;
	width: 66px;
	height: 69px;
	object-fit: contain;
}

.ach-auth-psc__copy {
	display: grid;
	justify-items: start;
	min-width: 0;
	font-family: Arial, Helvetica, sans-serif;
	line-height: 1;
}

.ach-auth-psc__intro {
	margin-bottom: 3px;
	color: #e00012;
	font-size: 17px;
	font-weight: 800;
}

.ach-auth-psc__button .ach-psc-wordmark {
	font-size: clamp(22px, 2.5vw, 31px);
}

.ach-auth-psc__service {
	justify-self: end;
	margin-top: 5px;
	color: #53585a;
	font-size: 11px;
	font-weight: 700;
}

.ach-auth-psc__status {
	color: #647b7d;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .07em;
	text-align: center;
	text-transform: uppercase;
}

.ach-auth-psc--compact {
	display: grid;
	align-content: center;
	justify-items: center;
	gap: 10px;
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	margin: 0;
	padding: 10px 0 10px 24px;
	border-left: 1px solid #d8e4e2;
}

.ach-auth-psc--compact .ach-auth-psc__button {
	width: 100%;
	min-width: 0;
	min-height: 68px;
	gap: 8px;
	padding: 10px;
	border-width: 1px;
	border-radius: 14px;
}

.ach-auth-psc--compact .ach-auth-psc__button img {
	width: 34px;
	height: 36px;
}

.ach-auth-psc--compact .ach-auth-psc__intro,
.ach-auth-psc--compact .ach-auth-psc__service {
	display: none;
}

.ach-auth-psc--compact .ach-auth-psc__button .ach-psc-wordmark {
	font-size: 14px;
	white-space: nowrap;
}

.ach-auth-psc--compact .ach-auth-psc__status {
	max-width: 190px;
	font-size: 8px;
	line-height: 1.35;
	text-align: center;
}

.ach-auth-divider {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 12px;
	margin: 2px 0 12px;
	color: #6f8382;
	font-size: 11px;
	font-weight: 700;
	text-align: center;
}

.ach-auth-divider::before,
.ach-auth-divider::after {
	content: "";
	height: 1px;
	background: #d8e4e2;
}

.ach-auth-form {
	display: grid;
	gap: 10px;
}

.ach-auth-form label {
	margin-top: 8px;
	color: var(--ach-auth-ink);
	font-size: 13px;
	font-weight: 750;
}

.ach-auth-form__label-row {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	margin-top: 8px;
}

.ach-auth-form__label-row label {
	margin-top: 0;
}

.ach-auth-form__label-row a {
	color: #087b75;
	font-size: 12px;
	font-weight: 750;
}

.ach-auth-form input:not([type="checkbox"]):not([type="radio"]),
.ach-auth-form select,
.ach-auth-form textarea {
	width: 100%;
	padding: 0 15px;
	border: 1px solid #cadbd8;
	border-radius: 10px;
	background: #fbfdfc;
	color: var(--ach-auth-ink);
	font-size: 16px;
	outline: 0;
	transition: border-color .18s ease, box-shadow .18s ease;
}

.ach-auth-form input:not([type="checkbox"]):not([type="radio"]),
.ach-auth-form select {
	height: 52px;
}

.ach-auth-form textarea {
	min-height: 96px;
	padding-top: 13px;
	padding-bottom: 13px;
	resize: vertical;
}

.ach-auth-form input:focus,
.ach-auth-form select:focus,
.ach-auth-form textarea:focus {
	border-color: #199f98;
	box-shadow: 0 0 0 3px rgba(25, 159, 152, .15);
}

.ach-auth-form input[readonly] {
	background: #f1f5f4;
	color: #6f8382;
	cursor: not-allowed;
}

.ach-auth-form small {
	display: block;
	margin-top: 5px;
	color: #6f8382;
	font-size: 12px;
}

.ach-auth-form button,
.ach-auth-link-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	margin-top: 14px;
	padding: 0 24px;
	border: 0;
	border-radius: 11px;
	background: var(--ach-auth-coral);
	color: var(--ach-auth-ink) !important;
	font-size: 15px;
	font-weight: 800;
	cursor: pointer;
}

.ach-auth-form button:disabled {
	background: #d7dfdd;
	color: #71817f !important;
	cursor: not-allowed;
}

.ach-signed-in-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.ach-auth-link-button--secondary {
	border: 1px solid #badbd7;
	background: transparent;
	color: var(--ach-auth-ink) !important;
}

.ach-auth-form__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.ach-auth-form__checkbox {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 7px 0 0;
	font-weight: 500 !important;
}

.ach-auth-form__checkbox input {
	width: 18px;
	height: 18px;
	accent-color: var(--ach-auth-teal);
}

.ach-auth-form__approval {
	margin: 10px 0 0;
	padding: 13px 15px;
	border-radius: 10px;
	background: var(--ach-auth-mint);
	color: var(--ach-auth-ink);
	font-size: 13px;
	line-height: 1.5;
}

.ach-auth-form__verification {
	display: grid;
	gap: 3px;
	margin: 6px 0 4px;
	padding: 13px 15px;
	border: 1px solid #b9ded9;
	border-radius: 10px;
	background: #f0faf8;
	color: var(--ach-auth-muted);
	font-size: 13px;
	line-height: 1.5;
}

.ach-auth-form__verification strong {
	color: var(--ach-auth-ink);
	font-size: 13px;
}

.ach-auth-form__honeypot {
	position: absolute !important;
	left: -10000px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

.ach-auth-card__alternate {
	margin: 22px 0 0;
	text-align: center !important;
	font-size: 14px;
}

.ach-auth-card__alternate a {
	color: #087b75;
	font-weight: 800;
}

.ach-auth-login__links {
	display: grid;
	justify-items: center;
	gap: 8px;
	margin-top: 18px;
}

.ach-auth-login__links .ach-auth-card__alternate {
	margin: 0;
}

.ach-auth-card__public-link {
	color: #087b75;
	font-size: 13px;
	font-weight: 700;
}

.ach-auth-card__eyebrow {
	margin: 0 0 5px;
	color: #0d8680;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.ach-auth-card--recovery h2 {
	margin: 0 0 10px;
}

.ach-auth-card__introduction {
	margin: 0 0 16px;
	color: var(--ach-auth-muted);
	font-size: 14px;
	line-height: 1.55;
}

.ach-auth-notice {
	margin-bottom: 18px;
	padding: 13px 15px;
	border-radius: 10px;
	font-size: 14px;
	line-height: 1.45;
}

.ach-auth-notice--error {
	border: 1px solid #f2b7ae;
	background: #fff1ee;
	color: #7b2e23;
}

.ach-auth-notice--success {
	border: 1px solid #9bd7cf;
	background: #e8f7f4;
	color: #075b57;
}

.ach-auth-notice--pending {
	display: grid;
	gap: 3px;
	border: 1px solid #efd2a0;
	background: #fff9ed;
	color: #6f5523;
}

.ach-auth-notice__request-meta {
	font-weight: 700;
}

.ach-manager-space h2 {
	color: var(--ach-auth-ink);
	font-size: 28px;
	font-weight: 800;
}

.anticiclic-professional-space .ach-manager-space {
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

/* 3. Personal space and service access. */

.ach-personal-sections {
	display: grid;
	gap: 24px;
}

.ach-personal-profile__summary {
	display: grid;
	grid-template-columns: minmax(220px, .75fr) minmax(0, 1.25fr);
	align-items: center;
	gap: 28px;
	padding: 18px 20px;
	border: 1px solid #d8e4e2;
	border-radius: 14px;
	background: #f8fbfa;
}

.ach-personal-profile__identity {
	display: grid;
	gap: 3px;
}

.ach-personal-profile__identity strong {
	color: var(--ach-auth-ink);
	font-size: 20px;
}

.ach-personal-profile__identity span {
	color: var(--ach-auth-muted);
	font-size: 14px;
}

.ach-personal-profile__summary dl {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin: 0;
}

.ach-personal-profile__summary dl div {
	display: grid;
	gap: 2px;
}

.ach-personal-profile__summary dt {
	color: #0d8680;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.ach-personal-profile__summary dd {
	min-width: 0;
	margin: 0;
	color: var(--ach-auth-ink);
	font-size: 13px;
	overflow-wrap: anywhere;
}

.ach-personal-profile__services a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 34px;
	box-sizing: border-box;
	padding: 8px 11px;
	border-radius: 9px;
	background: var(--ach-auth-coral);
	color: var(--ach-auth-ink);
	font-size: 12px;
	font-weight: 800;
	line-height: 1.25;
	text-decoration: none;
}

.ach-personal-profile__services a:hover,
.ach-personal-profile__services a:focus-visible {
	background: #ff6d5b;
	text-decoration: none;
}

.ach-personal-profile__services a:focus-visible {
	outline: 2px solid #0d8680;
	outline-offset: 3px;
}

.ach-personal-profile > .ach-rpps-status {
	margin-top: 12px;
}

.ach-personal-profile > .ach-personal-action-card {
	margin-top: 12px;
}

.ach-profile-verified-identity {
	display: grid;
	gap: 3px;
	margin-bottom: 4px;
	padding: 12px 14px;
	border: 1px solid #cbe3df;
	border-radius: 10px;
	background: #f2faf8;
	color: var(--ach-auth-muted);
	font-size: 13px;
}

.ach-profile-verified-identity strong {
	color: var(--ach-auth-ink);
}

.ach-admin-preview-banner {
	position: fixed;
	right: 18px;
	bottom: 18px;
	z-index: 100000;
	display: grid;
	grid-template-columns: auto auto;
	gap: 2px 18px;
	max-width: min(620px, calc(100vw - 36px));
	padding: 12px 15px;
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: 12px;
	background: #073f3d;
	box-shadow: 0 14px 36px rgba(3, 35, 34, .28);
	color: #fff;
	font-size: 13px;
	line-height: 1.35;
}

.ach-admin-preview-banner span,
.ach-admin-preview-banner small {
	display: flex;
	gap: 7px;
	align-items: baseline;
}

.ach-admin-preview-banner small {
	grid-column: 1;
	color: #b8d8d4;
	font-size: 11px;
}

.ach-admin-preview-banner a {
	grid-column: 2;
	grid-row: 1 / span 2;
	align-self: center;
	padding: 7px 10px;
	border-radius: 8px;
	background: #ff7867;
	color: #073f3d;
	font-size: 12px;
	font-weight: 800;
	text-decoration: none;
}

body.anticiclic-admin-preview form[aria-disabled="true"] {
	opacity: .62;
}

#wpadminbar .anticiclic-preview-toolbar-active > .ab-item {
	background: #9c4136 !important;
	color: #fff !important;
}

.ach-account-pending {
	display: grid;
	gap: 7px;
	margin-bottom: 14px;
	padding: 16px;
	border: 1px solid #edcf8f;
	border-radius: 10px;
	background: #fff8e8;
	color: #76530b;
	font-size: 13px;
}

.ach-account-pending--expired {
	border-color: #e3bcb6;
	background: #fff5f2;
	color: #843d34;
}

.ach-account-pending strong {
	color: var(--ach-auth-ink);
}

.ach-account-pending__email {
	color: var(--ach-auth-ink);
	font-size: 15px;
	font-weight: 800;
	overflow-wrap: anywhere;
}

.ach-account-pending__dates {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin: 5px 0;
}

.ach-account-pending__dates > div {
	padding: 9px 11px;
	border: 1px solid rgba(118, 83, 11, .16);
	border-radius: 8px;
	background: rgba(255, 255, 255, .55);
}

.ach-account-pending__dates dt {
	margin: 0 0 2px;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.ach-account-pending__dates dd {
	margin: 0;
	color: var(--ach-auth-ink);
	font-weight: 700;
}

.ach-account-pending small {
	font-size: 12px;
	line-height: 1.5;
}

.ach-account-pending__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
	margin-top: 5px;
}

.ach-account-pending__actions form {
	margin: 0;
}

.ach-account-pending__actions button {
	min-height: 42px;
	padding: 0 16px;
	border-radius: 10px;
	font-size: 12px;
	font-weight: 800;
	cursor: pointer;
}

.ach-account-pending__cancel {
	border: 1px solid #e3bcb6;
	background: #fff;
	color: #9c4136;
}

.ach-personal-action-card__body > h4,
.ach-account-security-section h4 {
	margin: 0 0 8px;
	color: var(--ach-auth-ink);
	font-size: 14px;
	font-weight: 800;
}

.ach-account-security-section {
	margin-top: 20px;
	padding-top: 18px;
	border-top: 1px solid #d8e4e2;
}

.ach-account-security-section__heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.ach-account-security-section__heading p {
	margin: 0;
	color: var(--ach-auth-muted);
	font-size: 12px;
}

.ach-account-security-section__heading form {
	flex: 0 0 auto;
}

.ach-account-sessions {
	display: grid;
	gap: 9px;
	margin: 14px 0 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.ach-account-session {
	display: grid;
	align-items: center;
	grid-template-columns: minmax(250px, 1fr) auto auto;
	gap: 10px 20px;
	padding: 14px !important;
	border: 1px solid #d6e5e2;
	border-radius: 11px;
	background: #fff;
}

.ach-account-session--current {
	border-color: #9dccca;
	background: #f4fbf9;
}

.ach-account-session__identity {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 10px;
	grid-column: 1;
	grid-row: 1;
}

.ach-account-session__identity > div {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 5px;
}

.ach-account-session__identity strong {
	color: var(--ach-auth-ink);
	font-size: 14px;
}

.ach-account-session__identity > div > span {
	color: var(--ach-auth-muted);
	font-size: 12px;
}

.ach-account-session__current {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 2px 8px;
	border-radius: 999px;
	background: #def2ee;
	color: #087b75;
	font-size: 10px;
	font-weight: 800;
	text-transform: uppercase;
}

.ach-account-session__details {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, auto));
	justify-content: start;
	gap: 10px 24px;
	grid-column: 2;
	grid-row: 1;
	margin: 0;
}

.ach-account-session__details dt {
	margin: 0 0 2px;
	color: var(--ach-auth-muted);
	font-size: 10px;
	font-weight: 800;
	text-transform: uppercase;
}

.ach-account-session__details dd {
	margin: 0;
	color: #435957;
	font-size: 12px;
}

.ach-account-session__revoke {
	align-self: center;
	grid-column: 3;
	grid-row: 1;
	margin: 0;
}

.ach-account-session__revoke button {
	min-height: 40px;
	padding: 0 14px;
	border: 1px solid #e3bcb6;
	border-radius: 9px;
	background: #fff;
	color: #9c4136;
	font-size: 12px;
	font-weight: 800;
	cursor: pointer;
}

.ach-account-sessions__empty {
	margin: 14px 0 0 !important;
	padding: 12px 14px;
	border-radius: 9px;
	background: #f3f7f6;
	color: var(--ach-auth-muted);
	font-size: 12px;
}

.ach-personal-danger {
	border-color: #e7c8c3;
}

.ach-personal-danger > summary small,
.ach-personal-danger > summary strong {
	color: #8f392f;
}

.ach-account-deletion-confirmation-copy {
	display: grid;
	gap: 4px;
	margin: 0 0 12px;
	color: #5f6968;
	font-size: 12px;
	line-height: 1.5;
}

.ach-account-deletion-confirmation-copy p {
	margin: 0 !important;
}

.ach-account-deletion-confirmation-copy strong {
	color: #713128;
}

.ach-account-deletion-form button {
	border-color: #cf7064 !important;
	background: #a9473b !important;
	color: #fff !important;
}

.ach-account-deletion-form button:hover,
.ach-account-deletion-form button:focus-visible {
	border-color: #8f392f !important;
	background: #8f392f !important;
}

.ach-account-deletion-form button:disabled,
.ach-account-deletion-form button:disabled:hover,
.ach-account-deletion-form button:disabled:focus {
	border-color: #d9dfde !important;
	background: #e7edeb !important;
	color: #aeb9b7 !important;
	cursor: not-allowed;
}

.ach-account-deletion-blocked {
	padding: 14px 16px;
	border: 1px solid #e7c8c3;
	border-radius: 11px;
	background: #fff5f2;
	color: #713128;
}

.ach-account-deletion-blocked > strong {
	display: block;
	margin-bottom: 6px;
}

.ach-account-deletion-blocked p {
	margin: 5px 0;
	font-size: 12px;
	line-height: 1.5;
}

.ach-account-deletion-blocked ul {
	display: grid;
	gap: 7px;
	margin: 9px 0;
	padding: 0;
	list-style: none;
	font-size: 12px;
}

.ach-account-deletion-blocked__service {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 10px 12px;
	border: 1px solid #e7c8c3;
	border-radius: 9px;
	background: #fff;
	color: #713128;
	text-decoration: none;
}

.ach-account-deletion-blocked__service:hover,
.ach-account-deletion-blocked__service:focus-visible {
	border-color: #c8786d;
	color: #713128;
}

.ach-account-deletion-blocked__service > span:first-child {
	display: grid;
	gap: 2px;
}

.ach-account-deletion-blocked__service strong {
	color: inherit;
}

.ach-account-deletion-blocked__service small {
	color: #8f5148;
}

.ach-secondary-button {
	min-height: 42px;
	padding: 0 16px;
	border: 1px solid #98c8c3;
	border-radius: 10px;
	background: #fff;
	color: #087b75;
	font-size: 12px;
	font-weight: 800;
	cursor: pointer;
}

.ach-secondary-button:disabled {
	border-color: #d8e4e2;
	background: #f1f5f4;
	color: #71817f;
	cursor: not-allowed;
}

.ach-psc-card {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-top: 12px;
	padding: 17px 19px;
	border: 1px solid #b9d9d5;
	border-left: 4px solid #0d8680;
	border-radius: 14px;
	background: linear-gradient(135deg, #f2faf8, #fff);
}

.ach-psc-card__presentation {
	display: flex;
	align-items: center;
	gap: 16px;
	min-width: 0;
}

.ach-psc-card__logo {
	flex: 0 0 auto;
	width: 58px;
	height: auto;
	object-fit: contain;
}

.ach-psc-card__content {
	display: grid;
	gap: 3px;
	max-width: 720px;
}

.ach-psc-card__content p {
	margin: 0;
	color: #0d8680;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.ach-psc-card__content h3 {
	margin: 0;
	font-size: 20px;
}

.ach-psc-wordmark {
	display: flex;
	align-items: baseline;
	gap: .18em;
	font-family: Arial, Helvetica, sans-serif;
	font-weight: 900;
	letter-spacing: -.055em;
	line-height: 1;
	text-transform: uppercase;
}

.ach-psc-wordmark__pro {
	color: #666;
}

.ach-psc-wordmark__sante {
	color: #08009b;
}

.ach-psc-wordmark__connect {
	color: #e00012;
}

.ach-psc-card__content span {
	color: var(--ach-auth-muted);
	font-size: 13px;
	line-height: 1.45;
}

.ach-psc-card__content .ach-psc-wordmark span {
	font-size: inherit;
	line-height: inherit;
}

.ach-psc-card__content .ach-psc-wordmark__pro {
	color: #666;
}

.ach-psc-card__content .ach-psc-wordmark__sante {
	color: #08009b;
}

.ach-psc-card__content .ach-psc-wordmark__connect {
	color: #e00012;
}

.ach-psc-card__action {
	display: grid;
	justify-items: end;
	gap: 7px;
	flex: 0 0 auto;
}

.ach-psc-card__action > span {
	color: #647b7d;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.ach-psc-card__action button {
	min-height: 42px;
	padding: 9px 15px;
	border: 0;
	border-radius: 10px;
	background: #dce9e7;
	color: #607575;
	font-size: 13px;
	font-weight: 800;
	cursor: not-allowed;
}

.ach-personal-rights > .ach-personal-alerts {
	margin: 0 0 20px;
}

.ach-personal-access-list {
	min-width: 0;
	max-width: 100%;
	padding-top: 0;
}

.ach-service-tabs {
	min-width: 0;
	max-width: 100%;
}

.ach-service-tabs__list {
	position: sticky;
	z-index: 30;
	top: var(--ach-sticky-header-offset);
	display: flex;
	gap: 8px;
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	max-width: 100%;
	margin: 0 0 18px;
	padding: 0 0 10px;
	overflow-x: auto;
	overscroll-behavior-inline: contain;
	border-bottom: 1px solid #d8e4e2;
	background: transparent;
	scrollbar-width: thin;
}

.ach-service-tabs__list.is-stuck {
	width: max-content;
	max-width: 100%;
	padding: 6px;
	border: 1px solid #c9ddda;
	border-radius: 0 0 12px 12px;
	background: rgba(255, 253, 248, .97);
	backdrop-filter: blur(10px);
}

.ach-service-tabs__list.is-stuck .ach-service-tabs__tab {
	min-height: 38px;
	padding: 7px 13px;
	border-radius: 9px;
	font-size: 13px;
}

.ach-service-tabs__tab {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	flex: 0 0 auto;
	min-height: 44px;
	padding: 9px 17px;
	border: 1px solid #c9ddda;
	border-radius: 11px;
	background: #f8fbfa;
	color: var(--ach-auth-muted);
	font: inherit;
	font-size: 14px;
	font-weight: 750;
	line-height: 1.2;
	cursor: pointer;
	transition: border-color .16s ease, background-color .16s ease, color .16s ease, box-shadow .16s ease;
}

.ach-service-tabs__alert-dot,
.ach-service-access__settings-alert-dot {
	display: inline-block;
	flex: 0 0 auto;
	width: 9px;
	height: 9px;
	border: 2px solid #fffdf8;
	border-radius: 50%;
	background: #ff7a69;
	box-shadow: 0 0 0 1px rgba(169, 71, 59, .2);
}

.ach-service-access__settings-alert-dot {
	margin-left: 7px;
	vertical-align: 1px;
}

.ach-service-tabs__list.is-stuck .ach-service-tabs__alert-dot {
	width: 8px;
	height: 8px;
}

.ach-service-tabs__tab:hover,
.ach-service-tabs__tab:focus-visible {
	border-color: #83c9c1;
	color: var(--ach-auth-teal);
}

.ach-service-tabs__tab:focus-visible {
	outline: 3px solid rgba(13, 134, 128, .2);
	outline-offset: 2px;
}

.ach-service-tabs__tab[aria-selected="true"] {
	border-color: #075b57;
	background: #087b75;
	box-shadow: 0 4px 0 #075b57, 0 8px 18px rgba(7, 91, 87, .16);
	color: #fff;
}

.ach-service-tabs.is-enhanced .ach-manager-space__services,
.ach-service-tabs--single .ach-manager-space__services {
	grid-template-columns: minmax(0, 1fr);
}

.ach-service-tabs.is-enhanced [data-service-panel][hidden] {
	display: none;
}

.ach-personal-access-actions,
.ach-personal-subsection {
	margin-top: 24px;
	padding-top: 24px;
	border-top: 1px solid #d8e4e2;
	scroll-margin-top: calc(var(--ach-sticky-header-offset) + 76px);
}

.ach-personal-rights--requests .ach-personal-access-actions {
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
}

.ach-personal-access-actions__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: start;
	gap: 12px;
}

.ach-personal-access-actions__grid > details[open] {
	grid-column: 1 / -1;
}

.ach-personal-access-actions__grid > details[open] .ach-personal-action-card__body {
	max-width: 780px;
}

.ach-service-request-links {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.ach-service-request-links--single {
	grid-template-columns: minmax(0, 1fr);
}

.ach-service-request-link {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: center;
	gap: 15px;
	min-height: 82px;
	box-sizing: border-box;
	padding: 18px 20px;
	border: 1px solid #cfe0dd;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 10px 25px rgba(7, 63, 61, .05);
	color: var(--ach-auth-ink);
	text-decoration: none;
	transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.ach-service-request-link:hover,
.ach-service-request-link:focus-visible {
	border-color: #73bdb7;
	box-shadow: 0 14px 30px rgba(7, 63, 61, .1);
	color: var(--ach-auth-ink);
	text-decoration: none;
	transform: translateY(-1px);
}

.ach-service-request-link:focus-visible {
	outline: 3px solid rgba(13, 134, 128, .2);
	outline-offset: 2px;
}

.ach-service-request-link__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	border-radius: 12px;
	background: #e8f5f2;
	color: #0d8680;
}

.ach-service-request-link__icon svg {
	width: 24px;
	height: 24px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ach-service-request-link__copy {
	display: grid;
	gap: 3px;
	min-width: 0;
}

.ach-service-request-link__copy strong {
	color: var(--ach-auth-ink);
	font-size: 16px;
	line-height: 1.25;
}

.ach-manager-space--request {
	width: min(100%, 980px);
	margin: 0 auto;
}

.ach-service-request-page__back {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-bottom: 14px;
	color: #0d8680;
	font-size: 13px;
	font-weight: 750;
	text-decoration: none;
}

.ach-service-request-page__back:hover,
.ach-service-request-page__back:focus-visible {
	color: #075f5a;
	text-decoration: underline;
}

.ach-service-request-page__panel {
	padding: clamp(24px, 3vw, 36px);
}

.ach-service-request-form {
	margin-top: 18px;
}

.ach-service-request-form__intro {
	max-width: 760px;
	margin: 0 0 18px;
	color: var(--ach-auth-muted);
	font-size: 14px;
	line-height: 1.55;
}

.ach-service-request-form .ach-auth-form {
	max-width: 780px;
}

.ach-facility-logo-field {
	display: grid;
	gap: 8px;
	margin-top: 4px;
}

.ach-facility-logo-field > label {
	margin-top: 0;
}

.ach-auth-form .ach-facility-logo-field input[type="file"] {
	height: auto;
	min-height: 52px;
	padding: 8px;
}

.ach-auth-form .ach-facility-logo-field input[type="file"]::file-selector-button {
	margin-right: 12px;
	padding: 8px 12px;
	border: 0;
	border-radius: 8px;
	background: #e2f2ef;
	color: var(--ach-auth-ink);
	font-weight: 750;
	cursor: pointer;
}

.ach-facility-logo-field__preview {
	display: block;
	width: auto;
	max-width: min(240px, 100%);
	height: 88px;
	padding: 8px;
	border: 1px solid #d8e4e2;
	border-radius: 10px;
	background: #fff;
	object-fit: contain;
}

.ach-facility-logo-field__preview[hidden] {
	display: none;
}

.ach-service-access__pending-form input:disabled,
.ach-service-access__pending-form select:disabled {
	opacity: 1;
	border-color: #ccd9d7 !important;
	background: #e7edec !important;
	color: #718684 !important;
	cursor: not-allowed;
	-webkit-text-fill-color: #718684;
}

.ach-service-access__pending-form .ach-facility-logo-field {
	padding: 16px;
	border: 1px solid #ccd9d7;
	border-radius: 12px;
	background: #e7edec;
}

.ach-service-access__pending-form .ach-facility-logo-field__preview {
	opacity: .62;
	filter: grayscale(.8);
}

.ach-personal-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 24px;
	padding: 22px clamp(22px, 2.8vw, 30px);
	border: 1px solid #d8e4e2;
	border-left: 4px solid var(--ach-auth-coral);
	border-radius: 16px;
	background: rgba(255, 255, 255, .92);
	box-shadow: 0 12px 30px rgba(7, 63, 61, .06);
}

.ach-personal-header > div {
	display: grid;
	gap: 5px;
}

.ach-personal-header p {
	margin: 0;
	color: #0d8680;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .15em;
	text-transform: uppercase;
}

.ach-personal-header h1 {
	margin: 0;
	padding: 0;
	color: var(--ach-auth-ink);
	font-size: clamp(28px, 3vw, 38px);
	font-weight: 800;
	letter-spacing: -.025em;
	line-height: 1.08;
}

.ach-personal-header span {
	max-width: 760px;
	color: var(--ach-auth-muted);
	font-size: 15px;
}

.ach-personal-header__profile {
	flex: 0 0 auto;
	margin: 0;
	padding: 10px 15px;
	border: 1px solid #a9cfca;
	border-radius: 999px;
	background: #fff;
	color: #0d8680;
	font-size: 12px;
	font-weight: 800;
}

.ach-personal-header__profile:hover {
	border-color: #0d8680;
	background: #eff9f7;
}

.ach-personal-alerts {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: -10px 0 24px;
}

.ach-personal-alerts a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 13px;
	border: 1px solid #cfe0dd;
	border-radius: 999px;
	background: #f7fbfa;
	color: var(--ach-auth-ink);
	font-size: 13px;
	font-weight: 750;
}

.ach-personal-alerts a strong {
	color: #087b75;
}

.ach-personal-alerts__review {
	border-color: #ffc0b7 !important;
	background: #fff3ef !important;
}

.ach-personal-dashboard {
	display: block;
}

.ach-personal-dashboard__main {
	display: grid;
	gap: 24px;
}

.ach-personal-panel {
	box-sizing: border-box;
	min-width: 0;
	max-width: 100%;
	padding: clamp(20px, 2.4vw, 28px);
	border: 1px solid #d8e4e2;
	border-radius: 18px;
	background: rgba(255, 255, 255, .94);
	box-shadow: 0 14px 36px rgba(7, 63, 61, .07);
	scroll-margin-top: 120px;
}

.ach-personal-empty {
	display: grid;
	gap: 4px;
	margin: 14px 0 24px;
	padding: 17px 19px;
	border: 1px dashed #b9cfcb;
	border-radius: 13px;
	background: #f8fbfa;
}

.ach-personal-empty strong {
	color: var(--ach-auth-ink);
}

.ach-personal-empty span {
	font-size: 14px;
}

.ach-manager-space__services {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: start;
	gap: 18px;
	min-width: 0;
	max-width: 100%;
	margin: 4px 0 0;
	padding: 0;
	list-style: none;
}

.ach-personal-panel--access .ach-manager-space__services {
	margin-top: 0;
}

.ach-personal-panel--access {
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

.ach-manager-space__services li {
	display: grid;
	gap: 3px;
	box-sizing: border-box;
	min-width: 0;
	max-width: 100%;
	padding: 15px 17px;
	border: 1px solid #d8e4e2;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 10px 25px rgba(7, 63, 61, .05);
}

.ach-service-access {
	align-content: start;
	gap: 15px !important;
	min-width: 0;
	padding: 21px !important;
}

.ach-service-access__heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
}

.ach-service-access__overview {
	display: flex;
	align-items: center;
	gap: 18px;
	min-width: 0;
}

.ach-service-access__logo {
	display: grid;
	place-items: center;
	overflow: hidden;
	flex: 0 0 auto;
	width: 116px;
	height: 88px;
	padding: 8px;
	border: 1px solid #d8e4e2;
	border-radius: 12px;
	background: #fff;
}

.ach-service-access__logo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.ach-service-access__identity {
	display: grid;
	justify-items: start;
	gap: 5px;
	min-width: 0;
}

.ach-service-access__heading strong {
	color: var(--ach-auth-ink);
	font-size: 22px;
	line-height: 1.1;
}

.ach-service-access__city {
	color: var(--ach-auth-muted);
	font-size: 14px;
}

.ach-service-access__rank-summary {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 5px;
}

.ach-service-access__rank-label {
	color: var(--ach-auth-muted);
	font-size: 12px;
	font-weight: 600;
}

.ach-service-access__role {
	display: inline-flex;
	align-items: center;
	padding: 5px 9px;
	border: 1px solid #b9d8d4;
	border-left: 3px solid #0d8f88;
	border-radius: 6px;
	background: #f8fbfa;
	color: #08766f;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.ach-service-access__shortcuts {
	display: grid;
	gap: 8px;
	width: min(100%, 300px);
	margin-left: auto;
}

.ach-service-access__page-link {
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	gap: 7px;
	min-height: 42px;
	padding: 9px 12px;
	border: 1px solid #c7dbd8;
	border-radius: 9px;
	background: #fff;
	color: #087b75;
	font-size: 12px;
	font-weight: 800;
	text-align: left;
	flex: 0 0 auto;
}

.ach-service-access__page-link--application {
	border-color: #78bdb7;
	background: #f2faf8;
}

.ach-service-access__page-link-arrow {
	margin-left: auto;
}

.ach-service-access__page-link:hover {
	border-color: #0c9a92;
	background: #f2faf8;
}

.ach-service-access__page-link span {
	font-size: 14px;
}

.ach-service-access__protocols {
	display: grid;
	gap: 10px;
}

.ach-service-access__protocols a {
	display: grid;
	gap: 4px;
	padding: 16px;
	border: 1px solid #9fd0ca;
	border-radius: 13px;
	background: linear-gradient(135deg, #f3fbf9, #fff);
	color: var(--ach-auth-ink);
}

.ach-service-access__protocols a:hover {
	border-color: #0c9a92;
	box-shadow: 0 9px 24px rgba(7, 63, 61, .09);
	transform: translateY(-1px);
}

.ach-service-access__protocols span {
	color: #0c8b84;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.ach-service-access__protocols strong {
	font-size: 16px;
}

.ach-service-access__protocols em {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-top: 8px;
	padding-top: 10px;
	border-top: 1px solid #cfe0dd;
	color: #087b75;
	font-size: 13px;
	font-style: normal;
	font-weight: 800;
}

.ach-service-access__protocols em span {
	font-size: 15px;
	letter-spacing: 0;
	text-transform: none;
}

.ach-service-access__empty-protocol {
	margin: 0;
	padding: 14px 15px;
	border: 1px dashed #c5d8d5;
	border-radius: 12px;
	background: #f8fbfa;
	color: var(--ach-auth-muted);
	font-size: 13px;
}

.ach-protocol-library__heading {
	align-items: end;
	margin-bottom: 22px;
}

.ach-personal-section__heading.ach-protocol-library__heading p {
	max-width: 760px;
	margin: 7px 0 0;
	color: var(--ach-auth-muted);
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0;
	text-transform: none;
}

.ach-protocol-library__services {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.ach-protocol-service {
	display: grid;
	align-content: start;
	gap: 15px;
	min-width: 0;
	padding: 21px;
	border: 1px solid #d8e4e2;
	border-radius: 15px;
	background: #fff;
	box-shadow: 0 10px 25px rgba(7, 63, 61, .05);
}

.ach-protocol-service__heading {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	min-height: 104px;
	padding-bottom: 15px;
	border-bottom: 1px solid #e3ecea;
}

.ach-protocol-service__overview {
	display: flex;
	align-items: center;
	gap: 15px;
	min-width: 0;
}

.ach-protocol-service__logo {
	box-sizing: border-box;
	display: grid;
	place-items: center;
	overflow: hidden;
	flex: 0 0 auto;
	width: 90px;
	height: 72px;
	padding: 7px;
	border: 1px solid #d8e4e2;
	border-radius: 11px;
	background: #fff;
}

.ach-protocol-service__logo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.ach-protocol-service__identity {
	display: grid;
	justify-items: start;
	gap: 4px;
	min-width: 0;
}

.ach-protocol-service__heading h3 {
	margin: 0;
	padding: 0;
	color: var(--ach-auth-ink);
	font-size: 19px;
	line-height: 1.15;
}

.ach-protocol-service__location {
	display: block;
	color: var(--ach-auth-muted);
	font-size: 13px;
}

.ach-protocol-service__rank-summary {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 7px;
	margin-top: 4px;
	color: var(--ach-auth-muted);
	font-size: 11px;
	font-weight: 600;
}

.ach-protocol-service__rank {
	display: inline-flex;
	align-items: center;
	padding: 4px 8px;
	border: 1px solid #b9d8d4;
	border-left: 3px solid #0d8f88;
	border-radius: 6px;
	background: #f8fbfa;
	color: #08766f;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.ach-protocol-service__versions {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.ach-protocol-service__versions:not(.ach-protocol-service__versions--archives) > .ach-protocol-version {
	height: 154px;
}

.ach-protocol-version {
	display: grid;
	align-content: start;
	gap: 5px;
	min-height: 154px;
	padding: 15px;
	border: 1px solid #bed8d4;
	border-radius: 12px;
	background: #f7fbfa;
	color: var(--ach-auth-ink);
	transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

a.ach-protocol-version {
	grid-template-rows: auto auto minmax(0, 1fr) auto;
}

a.ach-protocol-version:hover,
a.ach-protocol-version:focus-visible {
	border-color: #0c9a92;
	box-shadow: 0 9px 22px rgba(7, 63, 61, .09);
	transform: translateY(-1px);
}

.ach-protocol-version--draft {
	border-color: #efc76f;
	background: linear-gradient(145deg, #fff9e9 0%, #fffdf7 100%);
	box-shadow: inset 0 3px 0 rgba(239, 199, 111, .28);
}

.ach-protocol-version--empty {
	position: relative;
	place-items: center;
	align-content: center;
	gap: 12px;
	overflow: hidden;
	border-style: dashed;
	border-color: #b9cfcb;
	background: #f8fbfa;
	box-shadow: none;
	text-align: center;
}

.ach-protocol-version--draft-empty {
	border-color: #e5d2a5;
	background: #fffcf5;
}

.ach-protocol-version__status {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	width: fit-content;
	color: #0c8b84;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.ach-protocol-version--draft .ach-protocol-version__status {
	color: #9a6b05;
}

.ach-protocol-version__empty-icon {
	position: absolute;
	inset: 18px 20px;
	color: #9fcec9;
	pointer-events: none;
}

.ach-protocol-version__empty-icon svg {
	display: block;
	width: 100%;
	height: 100%;
	overflow: visible;
}

.ach-protocol-version__empty-icon path {
	fill: none;
	stroke: currentColor;
	stroke-width: 3;
	stroke-linecap: round;
	opacity: .72;
	vector-effect: non-scaling-stroke;
}

.ach-protocol-version--empty strong {
	position: relative;
	z-index: 1;
	padding: 7px 10px;
	border-radius: 999px;
	background: #f8fbfa;
	color: #315e5b;
	font-size: 13px;
	font-weight: 750;
	line-height: 1.3;
	white-space: nowrap;
}
.ach-protocol-version strong {
	font-size: 16px;
}

.ach-protocol-version small {
	color: var(--ach-auth-muted);
	font-size: 12px;
}

.ach-protocol-version em {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	align-self: end;
	margin-top: auto;
	padding-top: 10px;
	border-top: 1px solid #d6e4e1;
	color: #087b75;
	font-size: 13px;
	font-style: normal;
	font-weight: 800;
}

.ach-protocol-version em::after {
	content: "→";
	font-size: 16px;
	line-height: 1;
	transition: transform .18s ease;
}

a.ach-protocol-version:hover em::after,
a.ach-protocol-version:focus-visible em::after {
	transform: translateX(3px);
}

.ach-protocol-service__create {
	margin: 0;
}

.ach-protocol-service__create .ach-auth-link-button {
	position: relative;
	z-index: 1;
	justify-self: center;
	width: min(100%, 250px);
	min-height: 42px;
	margin: 0;
	border: 0;
	font-family: inherit;
	cursor: pointer;
}

.ach-protocol-service__archives {
	border-top: 1px solid #e3ecea;
	padding-top: 12px;
}

.ach-protocol-service__archives summary {
	width: fit-content;
	color: #087b75;
	font-size: 12px;
	font-weight: 800;
	cursor: pointer;
}

.ach-protocol-service__versions--archives {
	margin-top: 12px;
}

.ach-protocol-service__versions--archives .ach-protocol-version {
	min-height: 132px;
	background: #fbfcfc;
}

.ach-protocol-library__empty a {
	justify-self: start;
	margin-top: 8px;
	color: #087b75;
	font-weight: 750;
}

.ach-service-access__settings {
	box-sizing: border-box;
	min-width: 0;
	max-width: 100%;
	border-top: 1px solid #d8e4e2;
	padding-top: 14px;
}

.ach-service-access__management-sections {
	display: grid;
	gap: 18px;
	min-width: 0;
	max-width: 100%;
}

.ach-service-access__settings summary {
	cursor: pointer;
	color: #087b75;
	font-size: 13px;
	font-weight: 800;
}

.ach-unsaved-indicator[hidden] {
	display: none !important;
}

.ach-unsaved-indicator {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	margin-left: 7px;
	border: 1px solid #dca83b;
	border-radius: 50%;
	background: #fff3d3;
	box-shadow: 0 0 0 2px rgba(220, 168, 59, 0.12);
	color: #82550a;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	vertical-align: -2px;
}

.ach-unsaved-indicator::after {
	content: attr(data-tooltip);
	position: absolute;
	z-index: 60;
	top: calc(100% + 9px);
	left: 50%;
	width: max-content;
	max-width: min(300px, calc(100vw - 40px));
	padding: 8px 10px;
	border-radius: 8px;
	background: #073f3d;
	box-shadow: 0 8px 22px rgba(7, 63, 61, 0.2);
	color: #fff;
	font-size: 12px;
	font-weight: 650;
	line-height: 1.4;
	opacity: 0;
	pointer-events: none;
	transform: translate(-50%, -3px);
	transition: opacity 140ms ease, transform 140ms ease;
}

.ach-unsaved-indicator:hover::after,
.ach-service-access__settings > summary:focus-visible .ach-unsaved-indicator::after {
	opacity: 1;
	transform: translate(-50%, 0);
}

.ach-service-access__settings-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 22px;
	min-width: 0;
	max-width: 100%;
	margin-top: 18px;
}

.ach-service-access__settings-grid [hidden] {
	display: none !important;
}

.ach-service-access__settings-grid > section {
	box-sizing: border-box;
	min-width: 0;
	max-width: 100%;
	padding: 18px;
	border-radius: 14px;
	background: #f5faf8;
}

.ach-service-access__inline-confirmation {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	width: fit-content;
	min-height: 40px;
	margin: 0 0 14px !important;
	padding: 8px 12px;
	border: 1px solid #9fd8cc;
	border-radius: 9px;
	background: #eaf7f4;
	box-sizing: border-box;
	color: #075b57;
	font-size: 13px !important;
	font-weight: 750;
	line-height: 1 !important;
}

.ach-service-access__inline-confirmation-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 19px;
	width: 19px;
	height: 19px;
	border-radius: 50%;
	background: #0d8f88;
	color: #fff;
	font-family: Arial, sans-serif;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	transform: translateY(-0.5px);
}

.ach-service-access__inline-confirmation-copy {
	display: block;
	line-height: 1.25;
}

.ach-service-access__save-confirmation {
	margin-top: 8px !important;
	margin-bottom: 0 !important;
}

.ach-service-access__save-confirmation.is-error {
	border-color: #e7b8b1;
	background: #fff5f3;
	color: #8f392f;
}

.ach-service-access__save-confirmation.is-error .ach-service-access__inline-confirmation-icon {
	background: #b24b40;
}

.ach-auth-form [data-dirty-submit]:disabled,
.ach-auth-form [data-dirty-submit]:disabled:hover,
.ach-auth-form [data-dirty-submit]:disabled:focus {
	border-color: transparent !important;
	background: #e7edeb !important;
	box-shadow: none !important;
	color: #aeb9b7 !important;
	cursor: not-allowed;
	opacity: 1;
	transform: none !important;
}

.ach-service-access__settings-grid h3 {
	margin: 0 0 10px;
	color: var(--ach-auth-ink);
	font-size: 17px;
}

.ach-service-access__settings-grid p {
	font-size: 13px;
	line-height: 1.5;
}

.ach-service-membership__summary {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.ach-service-membership__summary > div {
	display: grid;
	gap: 4px;
	padding: 14px 16px;
	border: 1px solid #d7e6e3;
	border-radius: 11px;
	background: #fff;
}

.ach-service-membership__summary span {
	color: #5f7779;
	font-size: 11px;
	font-weight: 750;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.ach-service-membership__summary strong {
	color: var(--ach-auth-ink);
	font-size: 14px;
}

.ach-service-membership__leave {
	margin-top: 20px;
	padding-top: 18px;
	border-top: 1px solid #e7c8c3;
}

.ach-service-membership__leave h3 {
	margin-bottom: 5px;
	color: #8f392f;
}

.ach-service-membership__leave > p:not(.ach-service-access__inline-confirmation) {
	margin: 0 0 14px !important;
	color: #5f6968;
}

.ach-service-membership__leave form {
	display: grid;
	gap: 7px;
}

.ach-service-membership__leave label {
	margin: 0 !important;
	color: var(--ach-auth-ink);
	font-size: 12px;
	font-weight: 800;
}

.ach-service-membership__leave-fields {
	display: grid;
	grid-template-columns: minmax(260px, 1fr) auto;
	align-items: stretch;
	gap: 12px;
}

.ach-service-membership__leave input {
	box-sizing: border-box;
	width: 100%;
	min-height: 46px;
	padding: 10px 13px;
	border: 1px solid #c9dcda;
	border-radius: 9px;
	background: #fff;
	color: var(--ach-auth-ink);
}

.ach-service-membership__leave button {
	min-height: 46px;
	padding: 10px 16px;
	border: 1px solid #cf7064 !important;
	border-radius: 9px;
	background: #a9473b !important;
	color: #fff !important;
	font-weight: 800;
	cursor: pointer;
}

.ach-service-membership__leave button:hover,
.ach-service-membership__leave button:focus-visible {
	border-color: #8f392f !important;
	background: #8f392f !important;
}

.ach-service-membership__leave button:disabled,
.ach-service-membership__leave button:disabled:hover,
.ach-service-membership__leave button:disabled:focus {
	border-color: #d9dfde !important;
	background: #e7edeb !important;
	box-shadow: none !important;
	color: #aeb9b7 !important;
	cursor: not-allowed;
}

.ach-service-membership__blocked {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	align-items: center !important;
	gap: 10px;
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	min-height: 52px;
	margin: 0 0 14px !important;
	padding: 12px 14px !important;
	border: 1px solid #efd2a0;
	border-radius: 10px;
	background: #fff9ed;
	color: #6f5523 !important;
	line-height: 1.4;
}

.ach-service-membership__blocked > span {
	display: block;
	width: 100%;
	text-align: left;
}

.ach-service-membership__blocked-action {
	display: inline-flex;
	align-items: center;
	justify-self: start;
	gap: 7px;
	color: #7a4f13;
	font-size: 12px;
	font-weight: 850;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.ach-service-membership__blocked-action:hover,
.ach-service-membership__blocked-action:focus-visible {
	color: #4f330c;
}

.ach-service-access__danger-zone {
	margin-top: 24px;
	padding-top: 20px;
	border-top: 1px solid #e7c8c3;
}

.ach-service-access__cancel-update {
	display: flex;
	justify-content: flex-end;
	margin-top: 12px;
}

.ach-service-access__cancel-update button {
	min-height: 42px;
	padding: 0 16px;
	border: 1px solid #cf7064;
	border-radius: 9px;
	background: #fff;
	color: #9b3f34;
	font-weight: 800;
	cursor: pointer;
}

.ach-service-access__cancel-update button:hover,
.ach-service-access__cancel-update button:focus-visible {
	background: #fff1ee;
}

.ach-service-access__danger-zone h3 {
	margin-bottom: 5px;
	color: #8f392f;
}

.ach-service-access__danger-zone > p:not(.ach-service-access__inline-confirmation) {
	margin: 0 0 14px !important;
	color: #5f6968;
}

.ach-service-access__danger-zone > p strong {
	color: #713128;
}

.ach-service-access__delete-form {
	display: grid;
	grid-template-columns: repeat(2, minmax(220px, 1fr)) auto;
	align-items: end;
	gap: 12px;
}

.ach-service-access__delete-form > div {
	display: grid;
	gap: 7px;
}

.ach-service-access__delete-form label {
	margin: 0 !important;
}

.ach-service-access__delete-form input {
	width: 100%;
	min-height: 46px;
}

.ach-service-access__delete-form button {
	min-height: 46px;
	padding: 10px 16px;
	border: 1px solid #cf7064 !important;
	border-radius: 9px;
	background: #a9473b !important;
	color: #fff !important;
	font-weight: 800;
	cursor: pointer;
}

.ach-service-access__delete-form button:hover,
.ach-service-access__delete-form button:focus-visible {
	border-color: #8f392f !important;
	background: #8f392f !important;
}

.ach-service-access__delete-form button:disabled,
.ach-service-access__delete-form button:disabled:hover,
.ach-service-access__delete-form button:disabled:focus {
	border-color: #d9dfde !important;
	background: #e7edeb !important;
	color: #aeb9b7 !important;
	cursor: not-allowed;
}

.ach-access-mode-choices {
	display: grid;
	gap: 9px;
	margin: 0;
	padding: 0;
	border: 0;
}

.ach-auth-form--compact .ach-access-mode-choice {
	display: flex;
	align-items: flex-start;
	gap: 11px;
	margin: 0;
	padding: 12px;
	border: 1px solid #d7e6e3;
	border-radius: 11px;
	background: #fff;
	cursor: pointer;
}

.ach-auth-form--compact label.ach-access-mode-choice:has(input:checked) {
	border-color: #55aaa4;
	background: #eaf7f4;
	box-shadow: inset 3px 0 0 #0b8e87;
}

.ach-auth-form--compact .ach-access-mode-choice--unavailable {
	border-style: dashed;
	border-color: #cbd8d6;
	background: #edf2f1;
	cursor: not-allowed;
}

.ach-access-mode-choice--unavailable input[type="radio"] {
	cursor: not-allowed;
	opacity: .55;
}

.ach-access-mode-choice__ecps-label {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	white-space: nowrap;
}

.ach-access-mode-choice__ecps-icon {
	flex: 0 0 auto;
	width: 18px;
	height: 19px;
	object-fit: contain;
}

.ach-access-mode-choice--unavailable strong,
.ach-access-mode-choice--unavailable small {
	color: #718482;
}

.ach-access-mode-choice__availability {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 3px 9px;
	border: 1px solid #ccd8d6;
	border-radius: 999px;
	background: #f8faf9;
	color: #687c7a;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .05em;
	line-height: 1.1;
	text-transform: uppercase;
}

.ach-access-mode-choice input[type="radio"] {
	flex: 0 0 auto;
	margin-top: 2px;
}

.ach-access-mode-choice > span {
	display: grid;
	gap: 3px;
	min-width: 0;
}

.ach-access-mode-choice__heading {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 7px 16px;
}

.ach-access-mode-choice__password {
	padding: 4px 8px;
	border: 1px solid #8ecdc6;
	border-radius: 7px;
	background: #fff;
	color: #075b57;
	font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace;
	font-size: 12px;
	font-weight: 750;
	letter-spacing: .02em;
}

.ach-access-mode-choice__password-missing {
	color: #8a5a21;
	font-size: 11px;
	font-style: normal;
	font-weight: 750;
}

.ach-access-mode-choice strong {
	color: var(--ach-auth-ink);
	font-size: 14px;
}

.ach-access-mode-choice small {
	color: var(--ach-auth-muted);
	font-size: 12px;
	font-weight: 500;
	line-height: 1.4;
}

.ach-access-mode-panel {
	display: grid;
	gap: 9px;
	margin: -9px 0 0;
	padding: 14px 13px 13px 41px;
	border: 1px solid #55aaa4;
	border-top: 0;
	border-radius: 0 0 11px 11px;
	background: #eaf7f4;
}

.ach-access-mode-password-editor {
	margin: 0;
}

.ach-service-access__settings .ach-access-mode-password-editor > summary {
	display: flex;
	align-items: center;
	width: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	font-size: 12px;
	font-weight: 800;
	list-style: none;
}

.ach-access-mode-password-editor__toggle {
	margin-left: auto;
	padding: 8px 12px;
	border: 1px solid #55aaa4;
	border-radius: 8px;
	background: #fff;
}

.ach-service-access__settings .ach-access-mode-password-editor > summary::-webkit-details-marker {
	display: none;
	content: '';
}

.ach-service-access__settings .ach-access-mode-password-editor > summary:hover .ach-access-mode-password-editor__toggle,
.ach-service-access__settings .ach-access-mode-password-editor > summary:focus-visible .ach-access-mode-password-editor__toggle {
	border-color: #0b8e87;
	background: #f7fffd;
}

.ach-access-mode-password-editor__fields {
	display: grid;
	gap: 9px;
	margin-top: 14px;
}

.ach-access-mode-panel__error {
	display: flex;
	align-items: center;
	min-height: 42px;
	box-sizing: border-box;
	margin: 0;
	padding: 2px 11px 12px;
	border-left: 3px solid #d75549;
	border-radius: 7px;
	background: #fff2ef;
	color: #8c3028;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.4;
}

.ach-access-mode-panel input[aria-invalid="true"] {
	border-color: #d75549;
	box-shadow: 0 0 0 2px rgba(215, 85, 73, 0.14);
}

.ach-auth-form--compact label.ach-access-mode-choice:has(input[value="password"]:checked) {
	border-radius: 11px 11px 0 0;
}

.ach-access-mode-password-editor--required .ach-access-mode-password-editor__fields {
	margin-top: 0;
}

.ach-auth-form--compact label:has(input[type="radio"]) {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 2px 0;
}

.ach-auth-form--compact input[type="radio"] {
	width: 18px;
	height: 18px;
	accent-color: #0b8e87;
}

.ach-auth-form--compact button {
	min-height: 44px;
	margin-top: 8px;
	font-size: 14px;
}

.ach-service-access__members {
	display: grid;
	gap: 14px;
	margin: 0 0 20px;
	padding: 0;
	list-style: none;
}

.ach-service-access__member-search {
	display: grid;
	gap: 14px;
	width: 100%;
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
	margin-top: 18px;
	padding: 18px;
	border: 1px solid #cfe2df;
	border-radius: 14px;
	background: #f7fbfa;
}

.ach-service-access__member-search-heading {
	display: grid;
	gap: 3px;
}

.ach-service-access__member-search-heading h3,
.ach-service-access__member-search-heading p,
.ach-service-access__member-results-heading h3 {
	margin: 0 !important;
}

.ach-service-access__member-search-heading h3,
.ach-service-access__member-results-heading h3 {
	color: var(--ach-auth-ink);
	font-size: 14px;
	font-weight: 800;
	line-height: 1.3;
}

.ach-service-access__member-search-heading p {
	color: var(--ach-auth-muted);
	font-size: 12px !important;
	line-height: 1.45;
}

.ach-service-access__member-results-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-top: 26px;
	padding: 20px 2px 11px;
	border-top: 1px solid #d8e6e3;
}

.ach-service-access__member-results-heading > span {
	flex: 0 0 auto;
	padding: 4px 9px;
	border-radius: 999px;
	background: #e7f5f2;
	color: #087b75;
	font-size: 11px;
	font-weight: 800;
}

.ach-service-access__member-search-field {
	display: grid;
	gap: 6px;
	width: min(520px, 100%);
}

.ach-service-access__member-search-field label {
	color: var(--ach-auth-ink);
	font-size: 12px;
	font-weight: 800;
}

.ach-service-access__member-search-field input[type="search"] {
	width: 100%;
	min-height: 42px;
	box-sizing: border-box;
	padding: 8px 12px;
	border: 1px solid #c8ddda;
	border-radius: 10px;
	background: #fff;
	color: var(--ach-auth-ink);
	font: inherit;
	font-size: 14px;
}

.ach-service-access__member-search-field input[type="search"]:focus {
	border-color: #0d8680;
	outline: 3px solid rgba(13, 134, 128, .14);
	outline-offset: 1px;
}

.ach-service-access__member-search-status {
	margin: 0 !important;
	color: var(--ach-auth-muted);
	font-size: 12px !important;
}

.ach-service-access__accounts-intro {
	margin: 12px 0 0 !important;
	color: var(--ach-auth-muted);
}

.ach-member-role-filters {
	display: grid;
	gap: 7px;
	min-width: 0;
	max-width: 100%;
}

.ach-member-role-filters__heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	color: var(--ach-auth-muted);
	font-size: 12px;
	font-weight: 700;
}

.ach-member-role-filters__heading > span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.ach-member-role-filters__info,
.ach-member-role-filter__info {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #a8ceca;
	border-radius: 50%;
	color: #087b75;
	font-size: 9px;
	font-weight: 850;
	font-style: normal;
}

.ach-member-role-filters__info {
	width: 16px;
	height: 16px;
}

.ach-member-role-filters__all {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 28px;
	padding: 3px 10px;
	border: 1px solid #c8ddda;
	border-radius: 999px;
	background: #fff;
	color: var(--ach-auth-muted);
	font: inherit;
	font-size: 11px;
	font-weight: 800;
	cursor: pointer;
}

.ach-member-role-filters__list {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 6px;
	min-width: 0;
	max-width: 100%;
}

.ach-member-role-filter {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 6px;
	min-width: 0;
	min-height: 42px;
	padding: 6px 8px;
	position: relative;
	border: 1px solid #d8e6e3;
	border-radius: 9px;
	background: #fff;
	color: var(--ach-auth-ink);
	font: inherit;
	text-align: left;
	cursor: pointer;
}

.ach-member-role-filter:hover,
.ach-member-role-filter:focus-visible,
.ach-member-role-filters__all:hover,
.ach-member-role-filters__all:focus-visible {
	border-color: #83c9c1;
	color: #087b75;
}

.ach-member-role-filter.is-active,
.ach-member-role-filters__all.is-active {
	border-color: #60aaa4;
	background: #eaf7f4;
	color: #075b57;
	box-shadow: inset 0 0 0 1px rgba(13, 134, 128, .08);
}

.ach-member-role-filter__copy {
	display: flex;
	align-items: center;
	gap: 6px;
	min-width: 0;
}

.ach-member-role-filter__copy strong {
	min-width: 0;
	font-size: 11px;
	line-height: 1.2;
}

.ach-member-role-filter__count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 19px;
	height: 19px;
	padding: 0 5px;
	border-radius: 999px;
	background: #edf5f3;
	color: #557673;
	font-size: 10px;
	font-weight: 850;
	line-height: 1;
}

.ach-member-role-filter.is-active .ach-member-role-filter__count,
.ach-member-role-filters__all.is-active .ach-member-role-filter__count {
	background: #d7eeea;
	color: #075b57;
}

.ach-member-role-filter__info {
	flex: 0 0 auto;
	width: 15px;
	height: 15px;
	position: relative;
}

.ach-member-role-filter__info::after {
	content: attr(data-tooltip);
	position: absolute;
	z-index: 20;
	top: calc(100% + 8px);
	right: 0;
	width: max-content;
	max-width: min(260px, 70vw);
	padding: 7px 9px;
	border-radius: 7px;
	background: #073f3d;
	box-shadow: 0 8px 20px rgba(7, 63, 61, .18);
	color: #fff;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.35;
	opacity: 0;
	pointer-events: none;
	transform: translateY(-2px);
	transition: opacity .12s ease, transform .12s ease;
}

.ach-member-role-filter__info:hover::after,
.ach-member-role-filter:focus-visible .ach-member-role-filter__info::after {
	opacity: 1;
	transform: translateY(0);
}

.ach-service-access__member {
	display: grid;
	grid-template-columns: minmax(250px, 1fr) auto;
	align-items: center;
	gap: 12px 20px;
	padding: 18px 20px !important;
	border: 1px solid #d3e4e1 !important;
	border-radius: 14px;
	background: #fff !important;
	box-shadow: 0 8px 22px rgba(7, 63, 61, .045);
	transition: border-color .15s ease, box-shadow .15s ease;
}

.ach-service-access__member:hover {
	border-color: #b9d8d4 !important;
	box-shadow: 0 10px 25px rgba(7, 63, 61, .07);
}

.ach-service-access__member.is-updated {
	border-color: #55aaa4 !important;
	box-shadow: 0 0 0 3px rgba(13, 143, 136, .12), 0 10px 25px rgba(7, 63, 61, .07);
}

.ach-service-access__member-identity {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 7px 10px;
	min-width: 0;
}

.ach-service-access__member-identity strong {
	color: var(--ach-auth-ink);
	font-size: 15px;
	line-height: 1.3;
}

.ach-service-access__member-rpps {
	display: inline-flex;
	align-items: center;
	min-height: 26px;
	padding: 3px 8px;
	border: 1px solid #b9d8d4;
	border-radius: 7px;
	background: #f4faf9;
	color: #476a6e;
	font-size: 11px;
	font-weight: 750;
	line-height: 1.2;
	white-space: nowrap;
}

.ach-service-access__member-role {
	display: inline-flex;
	align-items: center;
	box-sizing: border-box;
	grid-column: 2;
	justify-self: end;
	min-height: 26px;
	padding: 2px 7px;
	border-radius: 999px;
	background: #e7f5f2;
	color: #087b75;
	font-size: 11px;
	font-weight: 800;
	line-height: 1.15;
}

.ach-service-access__member-summary-actions {
	display: flex;
	grid-column: 2;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 10px;
}

.ach-service-access__member-summary-actions form {
	margin: 0;
}

.ach-service-access__member-summary-actions .ach-service-access__member-role {
	grid-column: auto;
	justify-self: auto;
}

.ach-service-access__member-edit {
	min-height: 40px;
	padding: 8px 13px;
	border: 1px solid #b9d8d4 !important;
	border-radius: 9px;
	background: #f4faf9 !important;
	color: #087b75 !important;
	font-weight: 800;
	line-height: 1.2;
	cursor: pointer;
}

.ach-service-access__member-edit:hover,
.ach-service-access__member-edit:focus-visible {
	border-color: #55aaa4 !important;
	background: #eaf7f4 !important;
}

.ach-service-access__member-controls {
	display: grid;
	grid-column: 1 / -1;
	grid-template-columns: minmax(280px, 520px) auto;
	align-items: center;
	justify-content: end;
	gap: 20px;
	width: 100%;
	padding-top: 16px;
	border-top: 1px solid #e3eeec;
}

.ach-service-access__member-controls[hidden] {
	display: none !important;
}

.ach-service-access__member-form {
	display: block;
	margin: 0;
	padding: 0;
	border: 0;
}

.ach-service-access__member-form label {
	color: var(--ach-auth-ink);
	font-size: 12px;
	font-weight: 800;
}

.ach-service-access__member-form select {
	box-sizing: border-box;
	width: 100%;
	min-height: 42px;
	margin: 0;
	padding: 7px 38px 7px 12px;
	border: 1px solid #c8ddda;
	border-radius: 10px;
	background-color: #fbfefd;
	color: var(--ach-auth-ink);
	font-size: 14px;
	transition: border-color .15s ease, box-shadow .15s ease;
}

.ach-service-access__member-form select:focus {
	border-color: #0d8f88;
	outline: 0;
	box-shadow: 0 0 0 3px rgba(13, 143, 136, .14);
}

.ach-service-access__member-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: nowrap;
	gap: 12px;
}

.ach-service-access__member-actions form {
	margin: 0;
}

.ach-service-access__member-update-status {
	grid-column: 1 / -1;
	margin: 0 !important;
	padding: 9px 11px !important;
	border-left: 3px solid #d66b5e;
	border-radius: 7px;
	background: #fff5f3;
	color: #8f392f;
	font-size: 12px;
	line-height: 1.4;
}

.ach-service-access__member-update-status[hidden] {
	display: none !important;
}

.ach-service-access__member-save {
	min-height: 40px;
	padding: 8px 15px;
	border: 1px solid #0d8f88 !important;
	border-radius: 9px;
	background: #0d8f88 !important;
	color: #fff !important;
	font-weight: 800;
	line-height: 1.2;
	white-space: nowrap;
	cursor: pointer;
}

.ach-service-access__member-save:hover,
.ach-service-access__member-save:focus-visible {
	border-color: #087b75 !important;
	background: #087b75 !important;
}

.ach-service-access__member-save:disabled {
	opacity: .62;
	cursor: wait;
}

.ach-service-access__member-cancel {
	min-height: 40px;
	padding: 8px 12px;
	border: 1px solid #c8ddda !important;
	border-radius: 9px;
	background: #fff !important;
	color: var(--ach-auth-teal) !important;
	font-weight: 750;
	line-height: 1.2;
	cursor: pointer;
}

.ach-service-access__member-cancel:hover,
.ach-service-access__member-cancel:focus-visible {
	border-color: #8fbfba !important;
	background: #f4faf9 !important;
}

.ach-service-access__member-remove {
	min-height: 40px;
	padding: 8px 12px;
	border: 1px solid #e7b8b1 !important;
	border-radius: 9px;
	background: #fff !important;
	color: #a9473b !important;
	font-weight: 750;
	line-height: 1.2;
	white-space: nowrap;
	cursor: pointer;
}

.ach-service-access__member-remove:hover,
.ach-service-access__member-remove:focus-visible {
	border-color: #d58d82 !important;
	background: #fff5f3 !important;
	color: #8f392f !important;
}

.ach-service-access__member-protected {
	display: flex;
	align-items: center;
	box-sizing: border-box;
	grid-column: 1 / 2;
	justify-self: start;
	min-height: 0;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent;
	color: var(--ach-auth-muted);
	font-size: 11.5px !important;
	line-height: 1.35;
}

.ach-service-access__add-member {
	display: grid;
	grid-template-columns: minmax(260px, 1.5fr) minmax(220px, 1fr) auto;
	align-items: end;
	gap: 12px;
}

.ach-service-access__add-member--blacklist {
	grid-template-columns: minmax(260px, 1fr) auto;
}

.ach-service-access__add-member-field {
	display: grid;
	gap: 6px;
}

/* 4. Professional picker. */

.ach-professional-picker {
	position: relative;
}

.ach-professional-picker__control {
	position: relative;
}

.ach-professional-picker__control > input {
	box-sizing: border-box;
	width: 100%;
}

.ach-professional-picker__selected-rpps {
	position: absolute;
	top: 50%;
	right: 12px;
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 2px 8px;
	transform: translateY(-50%);
	border: 1px solid #b9d8d4;
	border-radius: 7px;
	background: #f4faf9;
	color: #476a6e;
	font-size: 10.5px;
	font-weight: 800;
	line-height: 1.2;
	pointer-events: none;
}

.ach-professional-picker__selected-rpps[hidden] {
	display: none;
}

.has-selected-professional-rpps .ach-professional-picker__control > input {
	padding-right: 132px;
}

.ach-professional-picker__status {
	position: absolute;
	top: calc(100% + 3px);
	left: 0;
	margin: 0 !important;
	color: var(--ach-auth-muted);
	font-size: 11px !important;
	line-height: 1.35;
}

.ach-professional-picker__results {
	position: absolute;
	z-index: 30;
	top: calc(100% - 1px);
	left: 0;
	right: 0;
	box-sizing: border-box;
	max-height: 270px;
	margin: 0 !important;
	padding: 4px !important;
	overflow-x: hidden;
	overflow-y: auto;
	border: 1px solid #b9d8d4;
	border-top: 0;
	border-radius: 0 0 12px 12px;
	background: #fff;
	box-shadow: 0 14px 32px rgba(7, 63, 61, .14);
	list-style: none !important;
}

.ach-professional-picker__results[hidden] {
	display: none;
}

.ach-professional-picker__results li {
	display: block !important;
	gap: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	list-style: none !important;
	line-height: normal;
}

.ach-professional-picker__results li + li {
	border-top: 1px solid #e7f0ee;
}

.ach-professional-picker__results button {
	display: block;
	width: 100%;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 10px 12px !important;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--ach-auth-ink);
	text-align: left !important;
	white-space: normal !important;
	cursor: pointer;
}

.ach-professional-picker__results button:hover,
.ach-professional-picker__results button:focus-visible {
	background: #edf8f6;
	outline: 0;
}

.ach-professional-picker__results button:hover {
	box-shadow: none;
}

.ach-professional-picker__results button:focus-visible {
	box-shadow: inset 0 0 0 2px #83c9c1;
}

.ach-professional-picker__control > input[data-professional-search][aria-expanded="true"] {
	position: relative;
	z-index: 31;
	border-radius: 10px 10px 0 0;
}

.ach-professional-picker__result-copy {
	display: grid;
	gap: 5px;
	min-width: 0;
}

.ach-professional-picker__result-copy strong {
	overflow-wrap: anywhere;
	font-size: 13px;
	line-height: 1.25;
}

.ach-professional-picker__result-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 5px 8px;
	color: var(--ach-auth-muted);
	font-size: 11px;
	font-weight: 600;
	line-height: 1.25;
}

.ach-professional-picker__result-rpps {
	display: inline-flex;
	align-items: center;
	min-height: 20px;
	padding: 1px 6px;
	border: 1px solid #c1ddda;
	border-radius: 6px;
	background: #f8fcfb;
	color: #456d69;
	font-size: 10px;
	font-weight: 800;
}

.ach-service-access__add-member input,
.ach-service-access__add-member select {
	min-height: 44px;
	margin: 0;
}

.ach-auth-form--compact.ach-service-access__add-member button {
	min-height: 44px;
	margin: 0;
	padding-inline: 18px;
	white-space: nowrap;
}

.ach-auth-form--compact.ach-service-access__add-member .ach-professional-picker__results button {
	justify-content: stretch;
	min-height: 0;
	padding: 10px 12px;
	white-space: normal;
}

.ach-service-access__add-member select:disabled,
.ach-auth-form--compact.ach-service-access__add-member > button:disabled {
	opacity: .48;
	cursor: not-allowed;
}

.ach-service-attachment-requests {
	scroll-margin-top: 120px;
}

.ach-service-attachment-requests__empty {
	margin: 0 !important;
	color: var(--ach-auth-muted);
	font-size: 12px !important;
}

.ach-service-access__blocked-users-list {
	display: grid;
	gap: 10px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.ach-service-access__blocked-users-list > li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin: 0 !important;
	padding: 12px 14px !important;
	border: 1px solid #d8e7e4;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 8px 22px rgba(7, 63, 61, .05);
	list-style: none !important;
}

.ach-service-access__blocked-user-identity {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 7px 10px;
	min-width: 0;
}

.ach-service-access__blocked-user-identity strong {
	overflow-wrap: anywhere;
	font-size: 14px;
}

.ach-service-access__blocked-user-identity small {
	color: var(--ach-auth-muted);
	font-size: 12px;
	font-weight: 650;
}

.ach-service-access__blocked-users-list form {
	flex: 0 0 auto;
	margin: 0;
}

.ach-service-audit__intro {
	margin: 0 0 16px !important;
	color: var(--ach-auth-muted);
	font-size: 13px !important;
}

.ach-service-audit__list {
	display: grid;
	gap: 8px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.ach-service-audit__item {
	display: grid;
	grid-template-columns: minmax(150px, 190px) minmax(0, 1fr);
	gap: 18px;
	margin: 0 !important;
	padding: 14px 16px !important;
	background: #fff;
	border: 1px solid #d8e7e4;
	border-radius: 12px;
	list-style: none !important;
}

.ach-service-audit__when {
	color: var(--ach-auth-muted);
	font-size: 12px;
	font-weight: 700;
}

.ach-service-audit__item p {
	margin: 0 !important;
	color: var(--ach-auth-text);
	font-size: 13px !important;
	line-height: 1.55;
}

.ach-service-audit__item strong {
	font-weight: 800;
}

.ach-service-audit__pagination,
.ach-account-sessions__pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	margin-top: 16px;
	font-size: 12px;
	font-weight: 750;
}

.ach-service-audit__pagination a,
.ach-account-sessions__pagination a {
	color: var(--ach-auth-accent);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.ach-review-requests.ach-service-attachment-requests__list li {
	grid-template-columns: minmax(240px, 1fr) minmax(430px, .9fr);
	align-items: center;
	gap: 18px;
	padding: 9px 12px;
}

.ach-service-attachment-requests__identity {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 7px 10px;
}

.ach-service-attachment-requests__identity strong {
	font-size: 14px;
}

.ach-service-attachment-requests__list .ach-review-request__decision {
	grid-template-columns: minmax(220px, 1fr) auto;
	align-items: center;
	gap: 10px;
}

.ach-service-attachment-requests__list .ach-review-request__decision > div {
	flex-wrap: nowrap;
}

.ach-service-attachment-requests__list .ach-review-request__decision button {
	min-height: 36px;
	padding: 0 14px;
}

.ach-text-button {
	padding: 0;
	border: 0;
	background: transparent;
	color: #a9473b;
	font-weight: 750;
	cursor: pointer;
}

.ach-protocol-matrix {
	width: 100%;
	margin: 0 auto;
	padding: 38px 0 70px;
	color: #143d43;
}

.ach-protocol-matrix__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 24px;
	padding: 24px 28px;
	border-top: 4px solid var(--ach-auth-coral);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 18px 45px rgba(7, 63, 61, .1);
}

.ach-protocol-matrix__header p {
	margin: 0 0 5px;
	color: #0b8e87;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.ach-protocol-matrix__header h2 {
	margin: 0;
	color: var(--ach-auth-ink);
	font-size: clamp(25px, 3vw, 38px);
}

.ach-protocol-matrix .ach-auth-link-button {
	flex: 0 0 auto;
	min-height: 44px;
	margin: 0;
}

.ach-protocol-matrix .anticiclic-matrix-overview,
.ach-protocol-matrix .anticiclic-matrix-editor {
	padding: 24px;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 18px 45px rgba(7, 63, 61, .08);
}

.ach-protocol-matrix .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding: 4px 12px;
	border: 1px solid #b8d2ce;
	border-radius: 8px;
	background: #fff;
	color: #075b57;
	font-weight: 750;
}

.ach-protocol-matrix .button-primary {
	border-color: #0b8e87;
	background: #0b8e87;
	color: #fff;
}

/* 5. Protocol workspace. */

.ach-protocol-workspace {
	width: min(calc(100vw - 48px), 1500px);
	max-width: 100%;
	margin: 0 auto;
	padding: 34px 0 72px;
	color: #143d43;
}

.ach-protocol-create {
	width: min(calc(100vw - 48px), 1180px);
	max-width: 100%;
	margin: 0 auto;
	padding: 34px 0 72px;
	color: #143d43;
}

.ach-protocol-create .wrap {
	margin: 0;
}

.ach-protocol-create input[type="text"],
.ach-protocol-create input[type="date"],
.ach-protocol-create select {
	box-sizing: border-box;
	max-width: 100%;
	min-height: 42px;
	padding: 8px 11px;
	border: 1px solid #9fb7b4;
	border-radius: 8px;
	background: #fff;
	color: #173f45;
	font: inherit;
}

.ach-protocol-create select {
	min-width: min(100%, 430px);
}

.ach-protocol-create .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 7px 14px;
	border: 1px solid #9fc5c1;
	border-radius: 8px;
	background: #fff;
	color: #075b57;
	font: inherit;
	font-weight: 750;
	text-decoration: none;
	cursor: pointer;
}

.ach-protocol-create .button-primary {
	border-color: #0b8e87;
	background: #0b8e87;
	color: #fff;
}

.ach-service-access__create-protocol {
	width: fit-content;
	min-height: 46px;
	margin-top: 0;
	padding: 0 18px;
	font-size: 14px;
}

.ach-protocol-workspace .wrap {
	margin: 0;
}

.ach-protocol-workspace .anticiclic-protocol-workspace__header,
.ach-protocol-workspace .anticiclic-protocol-panel {
	border-color: #cbdad8;
	border-radius: 14px;
	box-shadow: 0 14px 36px rgba(7, 63, 61, .07);
}

.ach-protocol-workspace .anticiclic-protocol-workspace__header {
	border-top: 4px solid #efc76f;
}

.ach-protocol-workspace .anticiclic-protocol-steps {
	border-top-color: #cbdad8;
}

.ach-protocol-workspace .anticiclic-protocol-step.is-active a {
	background: #edf8f7;
	box-shadow: inset 0 -4px #0b8e87;
}

.ach-protocol-workspace .form-table {
	width: 100%;
	border-collapse: collapse;
}

.ach-protocol-workspace .form-table th,
.ach-protocol-workspace .form-table td {
	padding: 12px 10px;
	text-align: left;
	vertical-align: middle;
}

.ach-protocol-workspace .form-table th {
	width: 220px;
}

.ach-protocol-workspace input[type="text"],
.ach-protocol-workspace input[type="date"],
.ach-protocol-workspace input[type="number"],
.ach-protocol-workspace select,
.ach-protocol-workspace textarea {
	box-sizing: border-box;
	max-width: 100%;
	min-height: 42px;
	padding: 8px 11px;
	border: 1px solid #9fb7b4;
	border-radius: 8px;
	background: #fff;
	color: #173f45;
	font: inherit;
}

.ach-protocol-workspace .button,
.ach-protocol-workspace input[type="submit"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding: 7px 14px;
	border: 1px solid #9fc5c1;
	border-radius: 8px;
	background: #fff;
	color: #075b57;
	font: inherit;
	font-weight: 750;
	text-decoration: none;
	cursor: pointer;
}

.ach-protocol-workspace .button-primary,
.ach-protocol-workspace input[type="submit"].button-primary {
	border-color: #0b8e87;
	background: #0b8e87;
	color: #fff;
}

.ach-protocol-workspace .notice {
	margin: 0 0 18px;
	padding: 10px 14px;
	border-left: 4px solid #2271b1;
	background: #f0f6fc;
}

.ach-protocol-workspace .notice p {
	margin: 0;
}

.ach-manager-space__services strong {
	color: var(--ach-auth-ink);
}

.ach-personal-section {
	margin-top: 30px;
	padding-top: 27px;
	border-top: 1px solid #d8e4e2;
}

.ach-personal-section__heading {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 22px;
	margin-bottom: 17px;
}

.ach-personal-section__heading > div {
	display: grid;
	gap: 3px;
}

.ach-personal-section__heading p {
	margin: 0;
	color: #0d8680;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.ach-personal-section__heading h2,
.ach-personal-section__heading h3 {
	margin: 0;
}

.ach-personal-section__heading > span {
	max-width: 430px;
	color: var(--ach-auth-muted);
	font-size: 13px;
	text-align: right;
}

.ach-pending-membership-requests {
	margin: 0 0 22px;
	padding: 15px;
	border: 1px solid #ead39d;
	border-radius: 15px;
	background: linear-gradient(135deg, #fffaf0 0%, #fffdf8 100%);
}

.ach-pending-membership-requests__heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 10px;
}

.ach-pending-membership-requests__heading p,
.ach-pending-membership-requests__heading h3 {
	margin: 0;
}

.ach-pending-membership-requests__heading p {
	color: #8a6417;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.ach-pending-membership-requests__heading h3 {
	margin-top: 3px;
	color: var(--ach-auth-ink);
	font-size: 17px;
}

.ach-pending-membership-requests__list {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 7px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ach-pending-membership-requests__list li {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 12px 20px;
	padding: 10px 13px;
	border: 1px solid #ead9b2;
	border-left: 4px solid #d9a63d;
	border-radius: 10px;
	background: #fff;
	box-shadow: 0 4px 12px rgba(91, 68, 24, .05);
}

.ach-pending-membership-requests__identity {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 3px 12px;
	min-width: 0;
}

.ach-pending-membership-requests__identity strong {
	overflow-wrap: anywhere;
	color: var(--ach-auth-ink);
	font-size: 14px;
}

.ach-pending-membership-requests__identity span {
	color: var(--ach-auth-muted);
	font-size: 12px;
}

.ach-pending-membership-requests__actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: nowrap;
	gap: 12px;
}

.ach-pending-membership-requests__actions small {
	color: var(--ach-auth-muted);
	font-size: 12px;
	white-space: nowrap;
}

.ach-pending-membership-requests__actions form {
	margin: 0;
}

.ach-pending-membership-requests__actions button {
	min-height: 32px;
	padding: 0 12px;
	border: 1px solid #dfb6ae;
	border-radius: 8px;
	background: #fff;
	color: #934339;
	font-size: 12px;
	font-weight: 800;
	cursor: pointer;
}

.ach-pending-membership-requests__actions button:hover,
.ach-pending-membership-requests__actions button:focus-visible {
	border-color: #c96e60;
	background: #fff5f2;
}

.ach-review-requests {
	display: grid;
	gap: 9px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ach-personal-action-card {
	margin: 0;
	padding: 18px;
	border: 1px solid #d8e4e2;
	border-radius: 15px;
	background: rgba(255, 255, 255, .92);
	box-shadow: 0 10px 28px rgba(7, 63, 61, .06);
	scroll-margin-top: 120px;
}

.ach-auth-form--request {
	max-width: none;
}

.ach-auth-form--request button {
	width: 100%;
	min-width: 0;
}

.ach-service-picker {
	position: relative;
	margin-top: 8px;
}

.ach-service-picker__control {
	display: flex;
	align-items: center;
	gap: 13px;
	min-height: 56px;
	padding: 0 18px;
	border: 1px solid #cadbd8;
	border-radius: 16px;
	background: #f7faf9;
	transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.has-open-service-results .ach-service-picker__control {
	position: relative;
	z-index: 36;
	border-radius: 16px 16px 0 0;
}

.ach-service-picker__control:focus-within {
	border-color: #62bbb5;
	background: #fff;
	box-shadow: 0 0 0 4px rgba(13, 134, 128, .1);
}

.has-selected-service .ach-service-picker__control {
	border-color: #0d8f88;
	background: #f0faf8;
}

.ach-service-picker__control svg {
	flex: 0 0 auto;
	width: 22px;
	height: 22px;
	fill: none;
	stroke: #688583;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ach-auth-form .ach-service-picker__control input[type="search"] {
	height: 54px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	font-size: 15px;
	font-weight: 650;
}

.ach-service-picker__control input[type="search"]:focus {
	border: 0;
	box-shadow: none;
}

.ach-service-picker__control input[type="search"]::placeholder {
	color: #849895;
	opacity: 1;
}

.ach-service-picker__status {
	min-height: 16px;
	margin: 5px 4px 0 !important;
	color: var(--ach-auth-muted);
	font-size: 11px !important;
	line-height: 1.4;
}

.ach-service-picker__results {
	position: absolute;
	z-index: 35;
	top: calc(100% - 1px);
	left: 0;
	right: 0;
	box-sizing: border-box;
	max-height: 310px;
	margin: 0 !important;
	padding: 4px !important;
	overflow-x: hidden;
	overflow-y: auto;
	border: 1px solid #b9d8d4;
	border-top: 0;
	border-radius: 0 0 12px 12px;
	background: #fff;
	box-shadow: 0 14px 32px rgba(7, 63, 61, .14);
	list-style: none !important;
}

.ach-service-picker__results[hidden] {
	display: none;
}

.ach-service-picker__results li {
	display: block !important;
	gap: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	list-style: none !important;
	line-height: normal;
}

.ach-service-picker__results li + li {
	border-top: 1px solid #e7f0ee !important;
}

.ach-auth-form--request .ach-service-picker__results button {
	display: block;
	width: 100%;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 10px 12px !important;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--ach-auth-ink) !important;
	text-align: left !important;
	white-space: normal !important;
}

.ach-auth-form--request .ach-service-picker__results button:hover,
.ach-auth-form--request .ach-service-picker__results button:focus-visible {
	background: #edf8f6;
	outline: 0;
}

.ach-service-picker__result-copy {
	display: grid;
	gap: 3px;
	min-width: 0;
}

.ach-service-picker__result-copy strong {
	overflow-wrap: anywhere;
	font-size: 13px;
	line-height: 1.3;
}

.ach-service-picker__result-copy small {
	margin: 0;
	color: var(--ach-auth-muted);
	font-size: 11px;
	font-weight: 600;
	line-height: 1.3;
}

.has-open-service-results .ach-service-picker__status {
	position: absolute !important;
	width: 1px;
	height: 1px;
	margin: -1px !important;
	padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

.ach-address-autocomplete {
	position: relative;
}

.ach-address-autocomplete__control {
	display: flex;
	align-items: center;
	gap: 13px;
	min-height: 56px;
	padding: 0 18px;
	border: 1px solid #cadbd8;
	border-radius: 13px;
	background: #f7faf9;
	transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.has-open-address-results .ach-address-autocomplete__control {
	position: relative;
	z-index: 36;
	border-radius: 13px 13px 0 0;
}

.ach-address-autocomplete__control:focus-within {
	border-color: #62bbb5;
	background: #fff;
	box-shadow: 0 0 0 4px rgba(13, 134, 128, .1);
}

.has-selected-address .ach-address-autocomplete__control {
	border-color: #0d8f88;
	background: #f0faf8;
}

.ach-address-autocomplete.is-disabled .ach-address-autocomplete__control {
	border-color: #d6e1df;
	background: #eef3f2;
	box-shadow: none;
}

.ach-address-autocomplete.is-disabled .ach-address-autocomplete__control svg {
	stroke: #91a19f;
}

.ach-address-autocomplete__control svg {
	flex: 0 0 auto;
	width: 22px;
	height: 22px;
	fill: none;
	stroke: #688583;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ach-auth-form .ach-address-autocomplete__control input[type="search"] {
	height: 54px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	font-size: 15px;
	font-weight: 650;
}

.ach-address-autocomplete__control input[type="search"]:focus {
	border: 0;
	box-shadow: none;
}

.ach-address-autocomplete__control input[type="search"]::placeholder {
	color: #849895;
	opacity: 1;
}

.ach-address-autocomplete[aria-busy="true"] .ach-address-autocomplete__control::after {
	content: "";
	flex: 0 0 auto;
	width: 15px;
	height: 15px;
	border: 2px solid #b9d8d4;
	border-top-color: #0d8f88;
	border-radius: 50%;
	animation: ach-address-autocomplete-spin .7s linear infinite;
}

@keyframes ach-address-autocomplete-spin {
	to {
		transform: rotate(360deg);
	}
}

.ach-address-autocomplete__status {
	min-height: 16px;
	margin: 5px 4px 0 !important;
	color: var(--ach-auth-muted);
	font-size: 11px !important;
	line-height: 1.4;
}

.ach-address-autocomplete__results {
	position: absolute;
	z-index: 35;
	top: calc(100% - 1px);
	left: 0;
	right: 0;
	box-sizing: border-box;
	max-height: 310px;
	margin: 0 !important;
	padding: 4px !important;
	overflow-x: hidden;
	overflow-y: auto;
	border: 1px solid #b9d8d4;
	border-top: 0;
	border-radius: 0 0 12px 12px;
	background: #fff;
	box-shadow: 0 14px 32px rgba(7, 63, 61, .14);
	list-style: none !important;
}

.ach-address-autocomplete__results[hidden] {
	display: none;
}

.ach-address-autocomplete__results li {
	display: grid !important;
	gap: 3px !important;
	margin: 0 !important;
	padding: 10px 12px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--ach-auth-ink);
	line-height: normal;
	list-style: none !important;
	cursor: pointer;
}

.ach-address-autocomplete__results li + li {
	border-top: 1px solid #e7f0ee !important;
}

.ach-address-autocomplete__results li:hover,
.ach-address-autocomplete__results li.is-active {
	background: #edf8f6 !important;
}

.ach-address-autocomplete__results strong {
	overflow-wrap: anywhere;
	font-size: 13px;
	line-height: 1.3;
}

.ach-address-autocomplete__results small {
	margin: 0;
	color: var(--ach-auth-muted);
	font-size: 11px;
	font-weight: 600;
	line-height: 1.3;
}

.ach-address-autocomplete__help {
	margin-bottom: 2px;
}

.has-open-address-results .ach-address-autocomplete__status {
	position: absolute !important;
	width: 1px;
	height: 1px;
	margin: -1px !important;
	padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

@media (prefers-reduced-motion: reduce) {
	.ach-address-autocomplete[aria-busy="true"] .ach-address-autocomplete__control::after {
		animation-duration: 1.6s;
	}
}

.ach-personal-action-card > summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	cursor: pointer;
	list-style: none;
}

.ach-personal-action-card > summary::-webkit-details-marker {
	display: none;
}

.ach-personal-action-card > summary > span:first-child {
	display: grid;
	gap: 3px;
}

.ach-personal-action-card > summary small {
	color: #0d8680;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.ach-personal-action-card > summary strong {
	color: var(--ach-auth-ink);
	font-size: 16px;
	line-height: 1.25;
}

.ach-personal-action-card > summary > span:last-child {
	flex: 0 0 auto;
	color: #087b75;
	font-size: 11px;
	font-weight: 800;
}

.ach-personal-action-card[open] > summary {
	padding-bottom: 14px;
	border-bottom: 1px solid #d8e4e2;
}

.ach-personal-action-card[open] > summary > span:last-child {
	font-size: 0;
}

.ach-personal-action-card[open] > summary > span:last-child::after {
	content: "Fermer";
	font-size: 11px;
}

.ach-personal-action-card__body {
	padding-top: 14px;
}

.ach-personal-action-card__body > p,
.ach-personal-action-card__intro {
	margin: 0 0 12px;
	font-size: 12px;
	line-height: 1.5;
}

.ach-personal-action-card .ach-auth-form {
	gap: 7px;
}

.ach-personal-action-card .ach-auth-form label {
	font-size: 12px;
}

.ach-personal-action-card .ach-auth-form input:not([type="checkbox"]):not([type="radio"]),
.ach-personal-action-card .ach-auth-form select {
	height: 45px;
	font-size: 14px;
}

.ach-personal-action-card .ach-auth-form textarea {
	min-height: 82px;
	font-size: 14px;
}

.ach-personal-action-card .ach-auth-form__grid {
	grid-template-columns: 1fr;
	gap: 3px;
}

.ach-personal-action-card .ach-auth-form button {
	min-height: 46px;
	font-size: 14px;
}

.ach-personal-secondary {
	background: #f3f8f6;
	box-shadow: none;
}

.ach-personal-secondary__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	align-items: start;
	gap: 12px;
}

.ach-personal-secondary__grid > details[open] {
	grid-column: 1 / -1;
}

.ach-personal-secondary__grid > details[open] .ach-personal-action-card__body {
	max-width: 780px;
}

.ach-personal-section--review {
	margin: 24px 0 0;
	padding: 25px;
	border: 1px solid #ffc5bc;
	border-top: 4px solid var(--ach-auth-coral);
	border-radius: 17px;
	background: #fff9f6;
}

.ach-review-requests li {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(300px, .8fr);
	gap: 24px;
	padding: 17px;
	border: 1px solid #ead9d4;
	border-radius: 13px;
	background: #fff;
}

.ach-review-requests li[data-notification-target] {
	scroll-margin-top: calc(var(--ach-sticky-header-offset) + 76px);
	outline: 0;
}

.ach-review-request__identity {
	display: grid;
	align-content: start;
	gap: 3px;
}

.ach-review-request__identity strong {
	color: var(--ach-auth-ink);
	font-size: 16px;
}

.ach-review-request__identity small {
	color: #0d8680;
	font-weight: 800;
}

.ach-review-request__identity p {
	margin: 9px 0 0;
	padding: 10px 12px;
	border-left: 2px solid var(--ach-auth-coral);
	background: #fff8f5;
	font-size: 13px;
}

.ach-review-request__decision {
	display: grid;
	gap: 7px;
}

.ach-review-request__decision label {
	color: var(--ach-auth-ink);
	font-size: 12px;
	font-weight: 750;
}

.ach-review-request__decision input,
.ach-review-request__decision select {
	width: 100%;
	height: 40px;
	padding: 0 11px;
	border: 1px solid #d8e4e2;
	border-radius: 8px;
	background: #fff;
}

.ach-review-request__decision > div {
	display: flex;
	gap: 8px;
}

.ach-review-request__decision button {
	min-height: 38px;
	padding: 0 16px;
	border: 0;
	border-radius: 8px;
	background: #0d8680;
	color: #fff;
	font-weight: 800;
	cursor: pointer;
}

.ach-review-request__decision button:disabled {
	opacity: .48;
	cursor: not-allowed;
}

.ach-review-request__decision .ach-button--reject {
	border: 1px solid #e3bcb6;
	background: #fff;
	color: #9c4136;
}

.ach-manager-profile {
	margin: 0;
	padding: 18px;
	border-top: 1px solid #d8e4e2;
}

.ach-rpps-status {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin: -4px 0 18px;
	padding: 13px 15px;
	border: 1px solid #d8e4e2;
	border-radius: 10px;
	font-size: 13px;
	line-height: 1.45;
}

.ach-rpps-status__copy {
	display: grid;
	gap: 3px;
}

.ach-rpps-status form {
	flex: 0 0 auto;
	margin: 0;
}

.ach-rpps-status__form--entry {
	display: flex;
	align-items: center;
	gap: 8px;
}

.ach-rpps-status__form--entry input[type="text"] {
	width: 170px;
	height: 36px;
	padding: 0 11px;
	border: 1px solid #c9a85f;
	border-radius: 9px;
	background: rgba(255, 255, 255, .76);
	color: var(--ach-auth-ink);
	font-size: 13px;
	outline: 0;
}

.ach-rpps-status__form--entry input[type="text"]:focus {
	border-color: #9a6b0e;
	box-shadow: 0 0 0 3px rgba(154, 107, 14, .12);
}

.ach-rpps-status__action {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding: 0 13px;
	border: 1px solid currentColor;
	border-radius: 9px;
	background: rgba(255, 255, 255, .68);
	color: inherit !important;
	font-size: 11px;
	font-weight: 800;
	cursor: pointer;
}

.ach-rpps-status__action:disabled {
	opacity: .55;
	cursor: not-allowed;
}

.ach-rpps-status strong {
	color: var(--ach-auth-ink);
}

.ach-rpps-status--verified {
	border-color: #9bd7cf;
	background: #e8f7f4;
	color: #075b57;
}

.ach-rpps-status--review {
	border-color: #edcf8f;
	background: #fff8e8;
	color: #76530b;
}

/* 6. Responsive adjustments. */

@media (max-width: 1180px) and (min-width: 981px) {
	#main-header #logo,
	#main-header.et-fixed-header #logo {
		width: 190px;
		max-width: 190px;
	}

	#main-header #top-menu .ach-header-account > a {
		padding: 0 12px !important;
	}

	#main-header #top-menu > li.ach-header-nav-link > a,
	#main-header .ach-header-protocol-use__toggle {
		padding-right: 9px !important;
		padding-left: 9px !important;
		font-size: 13px;
	}
}

@media (max-width: 1120px) {
	.ach-member-role-filters__list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.ach-personal-secondary__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 980px) {
	.ach-service-tabs__list.is-stuck {
		width: 100%;
		max-width: 100%;
	}

	.ach-account-page .et_pb_row {
		grid-template-columns: 1fr;
		gap: 34px;
		width: min(calc(100% - 36px), 720px) !important;
	}

	.ach-account-intro,
	.ach-account-form {
		width: 100% !important;
	}

	.ach-personal-header {
		gap: 16px;
	}

	.ach-manager-space__services {
		grid-template-columns: 1fr;
	}

	.ach-protocol-library__services {
		grid-template-columns: 1fr;
	}

	.ach-personal-profile__summary {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.ach-psc-card {
		align-items: flex-start;
		flex-direction: column;
	}

	.ach-psc-card__action {
		justify-items: start;
	}

	.ach-service-access__add-member {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ach-service-access__member {
		grid-template-columns: minmax(0, 1fr) auto;
	}

	.ach-service-access__member-role {
		grid-column: 2;
	}

	.ach-auth-form--compact.ach-service-access__add-member button {
		grid-column: 1 / -1;
		width: 100%;
	}
}

@media (max-width: 760px) {
	.ach-auth-login__methods,
	.ach-auth-registration__layout {
		grid-template-columns: 1fr;
		gap: 22px;
	}

	.ach-review-requests.ach-service-attachment-requests__list li {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.ach-auth-psc--compact {
		padding: 20px 0 0;
		border-top: 1px solid #d8e4e2;
		border-left: 0;
	}

	.ach-auth-psc--compact .ach-auth-psc__button {
		width: min(100%, 280px);
	}
}

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

	.ach-service-access__delete-form button {
		width: 100%;
	}

	.ach-service-membership__summary,
	.ach-service-membership__leave-fields {
		grid-template-columns: 1fr;
	}

	.ach-service-membership__leave button {
		width: 100%;
	}

	.ach-protocol-service__versions {
		grid-template-columns: 1fr;
	}

	.ach-protocol-service__heading {
		align-items: flex-start;
		flex-direction: column;
		min-height: 0;
	}

	.ach-protocol-service__overview {
		align-items: flex-start;
		gap: 12px;
	}

	.ach-protocol-service__logo {
		width: 78px;
		height: 60px;
		padding: 6px;
	}

	.ach-protocol-service__create,
	.ach-protocol-service__create .ach-auth-link-button {
		width: 100%;
	}

	.ach-member-role-filters__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ach-account-page {
		padding: 44px 0 !important;
	}

	.ach-auth-card {
		padding: 24px 20px;
		border-radius: 16px;
	}

	.ach-auth-psc__button {
		gap: 11px;
		min-height: 100px;
		padding: 13px 14px;
		border-radius: 18px;
	}

	.ach-auth-psc__button img {
		width: 52px;
		height: 55px;
	}

	.ach-auth-psc__intro {
		font-size: 14px;
	}

	.ach-auth-psc__button .ach-psc-wordmark {
		font-size: 19px;
	}

	.ach-auth-psc__service {
		font-size: 9px;
	}

	.ach-auth-divider {
		gap: 8px;
		font-size: 10px;
	}

	.ach-auth-form__grid {
		grid-template-columns: 1fr;
		gap: 4px;
	}

	.ach-account-pending__dates {
		grid-template-columns: 1fr;
	}

	.ach-account-pending__actions,
	.ach-account-pending__actions form,
	.ach-account-pending__actions button {
		width: 100%;
	}

	.ach-service-access__member,
	.ach-service-access__add-member {
		grid-template-columns: 1fr;
	}

	.ach-service-access__blocked-users-list > li {
		align-items: stretch;
		flex-direction: column;
	}

	.ach-service-access__blocked-users-list form,
	.ach-service-access__blocked-users-list .ach-service-access__member-remove {
		width: 100%;
	}

	.ach-service-audit__item {
		grid-template-columns: 1fr;
		gap: 5px;
		padding: 13px !important;
	}

	.ach-service-access__member {
		gap: 12px;
		padding: 16px !important;
	}

	.ach-service-access__member-controls {
		grid-template-columns: 1fr;
		justify-content: stretch;
		gap: 12px;
		padding-top: 12px;
	}

	.ach-service-access__member-form,
	.ach-service-access__member-actions,
	.ach-service-access__member-summary-actions,
	.ach-service-access__member-role,
	.ach-service-access__member-protected,
	.ach-auth-form--compact.ach-service-access__add-member button {
		grid-column: 1;
	}

	.ach-service-access__member-role {
		justify-self: start;
	}

	.ach-service-access__member-actions {
		justify-content: flex-start;
		width: 100%;
	}

	.ach-service-access__member-summary-actions {
		justify-content: flex-start;
		width: 100%;
	}

	.ach-service-access__member-actions > button,
	.ach-service-access__member-actions > form {
		flex: 1 1 0;
	}

	.ach-service-access__member-actions > form button {
		width: 100%;
	}

	.ach-personal-header {
		align-items: flex-start;
		flex-direction: column;
	}

	.ach-personal-section__heading,
	.ach-pending-membership-requests__heading,
	.ach-personal-action-card > summary {
		align-items: flex-start;
		flex-direction: column;
	}

	.ach-service-access__heading {
		align-items: stretch;
		flex-direction: column;
	}

	.ach-service-access__overview {
		align-items: flex-start;
		gap: 12px;
	}

	.ach-service-access__logo {
		width: 88px;
		height: 66px;
		padding: 6px;
	}

	.ach-service-access__page-link {
		justify-content: flex-start;
		width: 100%;
	}

	.ach-service-access__shortcuts {
		width: 100%;
		max-width: none;
		margin-left: 0;
	}

	.ach-auth-form__label-row,
	.ach-rpps-status,
	.ach-account-security-section__heading {
		align-items: stretch;
		flex-direction: column;
	}

	.ach-rpps-status form,
	.ach-rpps-status__action,
	.ach-account-security-section__heading form,
	.ach-account-security-section__heading .ach-secondary-button {
		width: 100%;
	}

	.ach-account-session {
		grid-template-columns: 1fr;
	}

	.ach-account-session__identity {
		align-items: flex-start;
		flex-direction: column;
		grid-row: auto;
	}

	.ach-account-session__details {
		grid-template-columns: 1fr;
		grid-column: 1;
		grid-row: auto;
	}

	.ach-account-session__revoke {
		grid-column: 1;
		grid-row: auto;
		width: 100%;
	}

	.ach-account-session__revoke button {
		width: 100%;
	}

	.ach-rpps-status__form--entry {
		align-items: stretch;
		flex-direction: column;
	}

	.ach-rpps-status__form--entry input[type="text"] {
		width: 100%;
	}

	.ach-personal-section__heading > span {
		text-align: left;
	}

	.ach-pending-membership-requests__list li {
		grid-template-columns: 1fr;
		align-items: flex-start;
	}

	.ach-pending-membership-requests__actions {
		justify-content: space-between;
		flex-wrap: wrap;
		width: 100%;
	}

	.ach-review-requests li {
		grid-template-columns: 1fr;
	}

	.ach-service-attachment-requests__list .ach-review-request__decision {
		grid-template-columns: 1fr;
	}

	.ach-service-attachment-requests__list .ach-review-request__decision > div,
	.ach-service-attachment-requests__list .ach-review-request__decision button {
		width: 100%;
	}

	.ach-personal-secondary__grid {
		grid-template-columns: 1fr;
	}

	.ach-personal-access-actions__grid,
	.ach-service-request-links,
	.ach-personal-profile__summary dl {
		grid-template-columns: 1fr;
	}

	.ach-service-request-link {
		min-height: 0;
		padding: 16px;
	}

	.ach-psc-card__action,
	.ach-psc-card__action button {
		width: 100%;
	}

	.ach-psc-card__logo {
		width: 50px;
	}

	.ach-protocol-matrix {
		width: min(calc(100vw - 24px), 1440px);
	}

	.ach-protocol-workspace {
		width: min(calc(100vw - 24px), 1500px);
	}

	.ach-protocol-create {
		width: min(calc(100vw - 24px), 1180px);
	}

	.ach-protocol-workspace .form-table,
	.ach-protocol-workspace .form-table tbody,
	.ach-protocol-workspace .form-table tr,
	.ach-protocol-workspace .form-table th,
	.ach-protocol-workspace .form-table td {
		display: block;
		width: 100%;
	}

	.ach-protocol-workspace .form-table th {
		padding-bottom: 3px;
	}

	.ach-protocol-workspace .form-table td {
		padding-top: 3px;
	}

	.ach-protocol-matrix__header {
		align-items: flex-start;
		flex-direction: column;
	}

	.ach-admin-preview-banner {
		right: 10px;
		bottom: 10px;
		left: 10px;
		grid-template-columns: 1fr;
		max-width: none;
	}

	.ach-admin-preview-banner a,
	.ach-admin-preview-banner small {
		grid-column: 1;
		grid-row: auto;
	}
}

/* Shared native-select language for every AnticiClic front-end workspace. */
.anticiclic-account-page select:not([multiple]):not([size]),
.ach-protocol-workspace select:not([multiple]):not([size]),
.ach-protocol-matrix select:not([multiple]):not([size]) {
	-webkit-appearance: none;
	appearance: none;
	box-sizing: border-box;
	min-height: 44px;
	padding-right: 44px;
	padding-left: 14px;
	border: 1px solid #bfd8d5;
	border-radius: 11px;
	background-color: #fff;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='m4 6 4 4 4-4' stroke='%23075b57' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 14px center;
	background-size: 16px 16px;
	color: var(--ach-auth-ink);
	font: inherit;
	line-height: 1.25;
	cursor: pointer;
	transition: border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}

.anticiclic-account-page select:not([multiple]):not([size]):hover,
.ach-protocol-workspace select:not([multiple]):not([size]):hover,
.ach-protocol-matrix select:not([multiple]):not([size]):hover {
	border-color: #79bdb7;
}

.anticiclic-account-page select:not([multiple]):not([size]):focus,
.anticiclic-account-page select:not([multiple]):not([size]):focus-visible,
.ach-protocol-workspace select:not([multiple]):not([size]):focus,
.ach-protocol-workspace select:not([multiple]):not([size]):focus-visible,
.ach-protocol-matrix select:not([multiple]):not([size]):focus,
.ach-protocol-matrix select:not([multiple]):not([size]):focus-visible {
	border-color: #0d8f88;
	outline: 0;
	box-shadow: 0 0 0 3px rgba(13, 143, 136, .15);
}

.anticiclic-account-page select:not([multiple]):not([size]):disabled,
.ach-protocol-workspace select:not([multiple]):not([size]):disabled,
.ach-protocol-matrix select:not([multiple]):not([size]):disabled {
	border-color: #d7e3e1;
	background-color: #f1f5f4;
	color: #78908e;
	cursor: not-allowed;
	opacity: 1;
}

.anticiclic-account-page select option,
.ach-protocol-workspace select option,
.ach-protocol-matrix select option {
	background: #fff;
	color: var(--ach-auth-ink);
}

.anticiclic-account-page select option:checked,
.ach-protocol-workspace select option:checked,
.ach-protocol-matrix select option:checked {
	background: #e7f5f2;
	color: #075b57;
}
