.mzi-account-registrations {
	--mzi-account-red: var(--mkp-red, #980102);
	--mzi-account-red-dark: #720000;
	--mzi-account-soft: var(--mkp-soft, #faf8f7);
	--mzi-account-border: var(--mkp-border, #e2dbd7);
	margin: 1.25rem 0 0 !important;
}

.mzi-account-registrations-head {
	border-bottom: 1px solid #eee9e6;
	padding-bottom: 1rem;
}

.mzi-account-registrations-head > div {
	min-width: 0;
}

.mzi-account-registrations-head h2 {
	margin: 0 !important;
}

.mzi-account-count {
	background: #f4efed;
	border: 1px solid #e5ddda;
	border-radius: 999px;
	color: #5f5652;
	font-size: .76rem;
	font-weight: 750;
	line-height: 1;
	padding: .52rem .72rem;
	white-space: nowrap;
}

.mzi-account-kicker {
	color: var(--mzi-account-red);
	font-size: .68rem;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.mzi-order-participants {
	border-top: 1px solid #eee9e6;
	display: grid;
	gap: .45rem;
	margin-top: .7rem;
	padding-top: .7rem;
}

.mzi-order-participants-label {
	color: #756d69;
	font-size: .66rem;
	font-weight: 750;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.mzi-order-participants-list {
	display: flex;
	flex-wrap: wrap;
	gap: .45rem .9rem;
}

.mzi-order-participant {
	align-items: center;
	display: inline-flex;
	font-size: .82rem;
	font-weight: 650;
	gap: .4rem;
}

.mzi-order-participant-initial {
	align-items: center;
	background: var(--mkp-red, #980102);
	border-radius: 6px;
	color: #fff;
	display: inline-flex;
	font-size: .66rem;
	font-weight: 800;
	height: 1.45rem;
	justify-content: center;
	width: 1.45rem;
}

.mzi-account-camp {
	background: #fff;
	border: 1px solid var(--mzi-account-border);
	border-radius: 10px;
	margin-top: 1rem;
	overflow: hidden;
}

.mzi-account-camp > header {
	align-items: center;
	background: var(--mzi-account-soft);
	border-bottom: 1px solid var(--mzi-account-border);
	display: grid;
	gap: .85rem;
	grid-template-columns: auto minmax(0, 1fr) auto;
	padding: 1rem 1.1rem;
}

.mzi-account-camp > header > div {
	display: grid;
	gap: .15rem;
	min-width: 0;
}

.mzi-account-camp h3 {
	font-size: clamp(1.05rem, 2vw, 1.3rem);
	line-height: 1.25;
	margin: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.mzi-account-camp > header p {
	color: #756d69;
	font-size: .82rem;
	margin: 0;
}

.mzi-account-camp-icon,
.mzi-account-participant-icon {
	align-items: center;
	background: var(--mzi-account-red);
	color: #fff;
	display: flex;
	font-weight: 800;
	justify-content: center;
}

.mzi-account-camp-icon {
	border-radius: 8px;
	font-size: 1rem;
	height: 2.55rem;
	width: 2.55rem;
}

.woocommerce-account .woocommerce-MyAccount-content .mzi-account-edit-toggle.button {
	background: #fff !important;
	border: 1px solid var(--mzi-account-red) !important;
	color: var(--mzi-account-red) !important;
	font-size: .76rem !important;
	min-height: 0 !important;
	padding: .56rem .75rem !important;
}

.woocommerce-account .woocommerce-MyAccount-content .mzi-account-edit-toggle.button:hover,
.woocommerce-account .woocommerce-MyAccount-content .mzi-account-edit-toggle.button:focus {
	background: var(--mzi-account-red) !important;
	color: #fff !important;
}

.mzi-account-participant-list {
	display: grid;
	gap: .7rem;
	padding: .9rem;
}

.mzi-account-participant {
	border: 1px solid #e1dcda;
	border-radius: 8px;
	overflow: hidden;
}

.mzi-account-participant[open] {
	border-color: #d4c5c1;
}

.mzi-account-participant-content .mzi-registration-surcharge {
	background: #fbf3f2;
	border-left: 3px solid var(--mzi-account-red);
	display: grid;
	gap: .12rem;
	margin: 0 0 .85rem;
	padding: .65rem .75rem;
}

.mzi-account-participant-content .mzi-registration-surcharge span {
	color: #756d69;
	font-size: .82rem;
}

.mzi-account-participant > summary {
	align-items: center;
	cursor: pointer;
	display: grid;
	gap: .7rem;
	grid-template-columns: auto minmax(0, 1fr) auto;
	list-style: none;
	padding: .72rem .8rem;
}

.mzi-account-participant > summary::-webkit-details-marker {
	display: none;
}

.mzi-account-participant > summary > span:nth-child(2) {
	display: grid;
	gap: .05rem;
}

.mzi-account-participant > summary small {
	color: var(--mzi-account-red);
	font-size: .62rem;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.mzi-account-participant > summary strong {
	font-size: .92rem;
}

.mzi-account-participant-icon {
	border-radius: 7px;
	height: 2rem;
	width: 2rem;
}

.mzi-account-toggle {
	color: var(--mzi-account-red);
	font-size: .72rem;
	font-weight: 700;
}

.mzi-account-toggle::after {
	content: " ↓";
}

.mzi-account-participant[open] .mzi-account-toggle::after {
	content: " ↑";
}

.mzi-account-participant-content {
	background: #fbfaf9;
	border-top: 1px solid #eee9e6;
	display: grid;
	gap: .7rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	padding: .8rem;
}

.mzi-account-data-section {
	background: #fff;
	border: 1px solid #e9e5e3;
	border-radius: 7px;
	min-width: 0;
	padding: .8rem;
}

.mzi-account-data-section h4 {
	border-bottom: 1px solid #eee;
	color: var(--mzi-account-red);
	font-size: .78rem;
	margin: 0 0 .65rem;
	padding-bottom: .55rem;
}

.mzi-account-data-section dl {
	display: grid;
	gap: .52rem;
	margin: 0;
}

.mzi-account-data-section dl > div {
	display: grid;
	gap: .55rem;
	grid-template-columns: minmax(105px, .9fr) minmax(0, 1.1fr);
}

.mzi-account-data-section dt {
	color: #77706c;
	font-size: .7rem;
}

.mzi-account-data-section dd {
	font-size: .76rem;
	font-weight: 650;
	margin: 0;
	overflow-wrap: anywhere;
}

.mzi-account-warning,
.mzi-account-locked {
	background: #fff8df;
	border-left: 3px solid #d5a008;
	display: grid;
	gap: .15rem;
	grid-column: 1 / -1;
	margin: 0;
	padding: .7rem .8rem;
}

.mzi-account-locked {
	margin: 0 .9rem .9rem;
}

.mzi-account-warning span,
.mzi-account-locked span {
	color: #5e4a08;
	font-size: .75rem;
}

.mzi-account-editor[hidden],
.mzi-account-view[hidden] {
	display: none !important;
}

.mzi-account-editor {
	background: #fff;
}

.mzi-account-editor-head {
	align-items: center;
	background: #fbfaf9;
	border-bottom: 1px solid var(--mzi-account-border);
	display: flex;
	gap: 1rem;
	justify-content: space-between;
	padding: .85rem 1rem;
}

.mzi-account-editor-head > div {
	display: grid;
	gap: .15rem;
}

.mzi-account-editor-head strong {
	font-size: .95rem;
}

.mzi-account-editor-head span {
	color: #716966;
	font-size: .75rem;
}

.mzi-account-editor-back,
.mzi-account-cancel {
	background: transparent;
	border: 0;
	color: var(--mzi-account-red);
	cursor: pointer;
	font-size: .75rem;
	font-weight: 750;
	padding: .35rem;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.mzi-account-editor form {
	padding: 1rem;
}

.mzi-account-edit-participant {
	border: 1px solid #ded8d6;
	border-radius: 8px;
	margin: 0 0 1rem;
	padding: 1rem;
}

.mzi-account-edit-participant legend {
	color: var(--mzi-account-red);
	font-size: .82rem;
	font-weight: 800;
	padding: 0 .45rem;
}

.mzi-account-edit-grid {
	display: grid;
	gap: .9rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mzi-account-edit-field {
	display: grid;
	gap: .38rem;
	min-width: 0;
}

.mzi-account-edit-label {
	font-size: .78rem;
	font-weight: 700;
}

.mzi-account-edit-field input:not([type="checkbox"]):not([type="radio"]),
.mzi-account-edit-field select,
.mzi-account-edit-field textarea {
	background: #fff;
	border: 1px solid #cfc6c4;
	border-radius: 6px;
	box-sizing: border-box;
	min-height: 42px;
	padding: .5rem .65rem;
	width: 100%;
}

.mzi-account-edit-field textarea {
	min-height: 105px;
	resize: vertical;
}

.mzi-account-edit-field > small {
	color: #6e6e6e;
	font-size: .7rem;
}

.mzi-account-edit-options {
	display: grid;
	gap: .4rem;
}

.mzi-account-edit-options label {
	align-items: flex-start;
	display: flex;
	gap: .45rem;
	margin: 0;
}

.mzi-account-edit-options input {
	margin-top: .2rem;
}

.mzi-account-edit-actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: .7rem;
}

.woocommerce-account .woocommerce-MyAccount-content .mzi-account-edit-actions .button {
	background: var(--mzi-account-red) !important;
	border-color: var(--mzi-account-red) !important;
	color: #fff !important;
}

.woocommerce-account .woocommerce-MyAccount-content .mzi-account-edit-actions .button:hover {
	background: var(--mzi-account-red-dark) !important;
	border-color: var(--mzi-account-red-dark) !important;
}

.mzi-account-edit-actions > span {
	color: #6e6e6e;
	font-size: .7rem;
	margin-left: auto;
}

@media (max-width: 760px) {
	.mzi-account-camp > header {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.mzi-account-edit-toggle {
		grid-column: 1 / -1;
		justify-self: stretch;
	}

	.mzi-account-participant-content,
	.mzi-account-edit-grid {
		grid-template-columns: 1fr;
	}

	.mzi-account-data-section dl > div {
		gap: .15rem;
		grid-template-columns: 1fr;
	}

	.mzi-account-toggle {
		font-size: 0;
	}

	.mzi-account-toggle::after {
		font-size: .8rem;
	}

	.mzi-account-editor-head {
		align-items: flex-start;
		flex-direction: column;
	}

	.mzi-account-edit-actions > span {
		flex-basis: 100%;
		margin-left: 0;
	}
}
