.zpc-mijn-wedstrijden {
	--zpc-mw-border: #d7dee8;
	--zpc-mw-muted: #617083;
	--zpc-mw-soft: #f6f8fb;
	--zpc-mw-text: #172033;
	--zpc-mw-success-bg: #dcfce7;
	--zpc-mw-success-text: #166534;
	--zpc-mw-danger-bg: #fee2e2;
	--zpc-mw-danger-text: #991b1b;
	color: var(--zpc-mw-text);
}

.zpc-wedstrijd-single {
	--zpc-single-border: #d7dee8;
	--zpc-single-muted: #617083;
	--zpc-single-soft: #f6f8fb;
	--zpc-single-text: #172033;
	color: var(--zpc-single-text);
}

.zpc-wedstrijd-single__hero,
.zpc-wedstrijd-single__panel {
	background: #fff;
	border-color: var(--zpc-single-border);
}

.zpc-wedstrijd-single__hero {
	background: linear-gradient(180deg, #f7fbff 0%, #fff 100%);
}

.zpc-wedstrijd-single__summary p,
.zpc-wedstrijd-single__panel p,
.zpc-wedstrijd-single__panel ul {
	margin-top: 0;
}

.zpc-wedstrijd-single__summary p {
	background: var(--zpc-single-soft);
	border-radius: 999px;
	color: var(--zpc-single-muted);
	font-size: .95rem;
	font-weight: 650;
	padding: .35rem .7rem;
}

.zpc-wedstrijd-single__panel h2 {
	font-size: clamp(1.15rem, 2vw, 1.45rem);
	margin-bottom: .35rem;
}

.zpc-wedstrijd-single__panel p {
	color: var(--zpc-single-muted);
	line-height: 1.45;
	margin-bottom: 0;
}

.zpc-wedstrijd-pdfs {
	display: grid;
	gap: .45rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.zpc-wedstrijd-pdfs a {
	align-items: center;
	background: var(--zpc-single-soft, #f6f8fb);
	border: 1px solid var(--zpc-single-border, #d7dee8);
	border-radius: 6px;
	display: inline-flex;
	font-weight: 650;
	min-height: 2.4rem;
	padding: .45rem .7rem;
	text-decoration: none;
}

.zpc-mijn-wedstrijden__filters {
	align-items: end;
	display: flex;
	flex-wrap: wrap;
	gap: .45rem .75rem;
	margin: 0 0 1rem;
}

.zpc-mijn-wedstrijden__filters label {
	color: var(--zpc-mw-muted);
	font-size: .9rem;
	font-weight: 700;
}

.zpc-mijn-wedstrijden__filters select {
	border: 1px solid var(--zpc-mw-border);
	border-radius: 6px;
	font: inherit;
	min-height: 2.4rem;
	padding: .45rem 2rem .45rem .65rem;
	max-width: 100%;
}

.zpc-mijn-wedstrijden__list {
	display: grid;
	gap: .85rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.zpc-mijn-wedstrijden__item {
	background: #fff;
	border: 1px solid var(--zpc-mw-border);
	border-radius: 8px;
	overflow: hidden;
}

.zpc-mijn-wedstrijden__item.is-cancelled {
	background: #fff7f6;
	border-color: #f4b4ad;
}

.zpc-mijn-wedstrijden__accordion {
	margin: 0;
}

.zpc-mijn-wedstrijden__summary {
	align-items: center;
	cursor: pointer;
	display: flex;
	gap: .75rem;
	grid-template-columns: minmax(0, 1fr) auto auto;
	list-style: none;
	padding: 1rem;
}

.zpc-mijn-wedstrijden__summary::-webkit-details-marker {
	display: none;
}

.zpc-mijn-wedstrijden__summary::after {
	border-color: currentColor;
	border-style: solid;
	border-width: 0 2px 2px 0;
	content: "";
	height: .45rem;
	justify-self: end;
	transform: rotate(45deg);
	width: .45rem;
}

.zpc-mijn-wedstrijden__accordion[open] .zpc-mijn-wedstrijden__summary {
	border-bottom: 1px solid var(--zpc-mw-border);
}

.zpc-mijn-wedstrijden__accordion[open] .zpc-mijn-wedstrijden__summary::after {
	transform: rotate(225deg);
}

.zpc-mijn-wedstrijden__summary-main {
	display: grid;
	gap: .2rem;
	min-width: 0;
}

.zpc-mijn-wedstrijden__title {
	display: block;
	font-size: 1.05rem;
	font-weight: 700;
	line-height: 1.25;
}

.zpc-mijn-wedstrijden__item.is-cancelled .zpc-mijn-wedstrijden__title {
	text-decoration: line-through;
}

.zpc-mijn-wedstrijden__date {
	color: var(--zpc-mw-muted);
	font-size: .92rem;
	line-height: 1.35;
}

.zpc-mijn-wedstrijden__details {
	display: grid;
	gap: .45rem;
	padding: 1rem;
}

.zpc-mijn-wedstrijden__meta,
.zpc-mijn-wedstrijden__location,
.zpc-mijn-wedstrijden__link,
.zpc-mijn-wedstrijden__swimmer,
.zpc-mijn-wedstrijden__roles,
.zpc-mijn-wedstrijden__deadline,
.zpc-mijn-wedstrijden__notes {
	color: var(--zpc-mw-muted);
	font-size: .92rem;
	line-height: 1.45;
	margin: 0;
}

.zpc-mijn-wedstrijden__swimmers {
	display: grid;
	gap: .25rem;
}

.zpc-mijn-wedstrijden__deadline {
	color: var(--zpc-mw-text);
	font-weight: 650;
}

.zpc-mijn-wedstrijden__link a {
	font-weight: 650;
}

.zpc-mijn-wedstrijden__notes {
	background: var(--zpc-mw-soft);
	border-radius: 6px;
	padding: .55rem .65rem;
}

.zpc-mijn-wedstrijden__actions {
	border-top: 1px solid var(--zpc-mw-border);
	display: grid;
	gap: .75rem;
	margin-top: .4rem;
	padding-top: .85rem;
}

.zpc-mijn-wedstrijden__coach-overname-inbox,
.zpc-mijn-wedstrijden__coach-overname-outbox {
	display: grid;
	gap: .75rem;
	margin-bottom: 1rem;
}

.zpc-mijn-wedstrijden__coach-overname-request {
	background: #f6f8fb;
	border: 1px solid var(--zpc-mw-border);
	border-radius: 8px;
	display: grid;
	gap: .65rem;
	padding: .85rem;
	position: relative;
}

.zpc-mijn-wedstrijden__coach-overname-request--accepted {
	background: var(--zpc-mw-success-bg);
	border-color: var(--zpc-mw-success-text);
	color: var(--zpc-mw-success-text);
}

.zpc-mijn-wedstrijden__coach-overname-request--rejected {
	background: var(--zpc-mw-danger-bg);
	border-color: var(--zpc-mw-danger-text);
	color: var(--zpc-mw-danger-text);
}

.zpc-mijn-wedstrijden__coach-overname-request p {
	margin: 0;
	padding-inline-end: 2rem;
}

.zpc-mijn-wedstrijden__coach-overname-dismiss {
	position: absolute;
	right: .55rem;
	top: .55rem;
}

.zpc-mijn-wedstrijden__coach-overname-dismiss-button {
	align-items: center;
	appearance: none;
	background: transparent;
	border: 0;
	color: var(--zpc-mw-text);
	cursor: pointer;
	display: inline-flex;
	font: inherit;
	font-size: 1rem;
	font-weight: 700;
	height: 1.75rem;
	justify-content: center;
	line-height: 1;
	padding: 0;
	width: 1.75rem;
}

.zpc-mijn-wedstrijden__coach-overname-dismiss-button:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

.zpc-mijn-wedstrijden__coach-overname-status-list {
	display: grid;
	gap: .35rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.zpc-mijn-wedstrijden__coach-overname-status-list li {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	justify-content: space-between;
}

.zpc-mijn-wedstrijden__coach-overname-response {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: .55rem;
}

.zpc-mijn-wedstrijden__action-group {
	display: grid;
	gap: .55rem;
}

.zpc-mijn-wedstrijden__action-group + .zpc-mijn-wedstrijden__action-group {
	border-top: 1px solid var(--zpc-mw-border);
	padding-top: .75rem;
}

.zpc-mijn-wedstrijden__action-title {
	font-weight: 700;
	margin: 0;
}

.zpc-mijn-wedstrijden__form {
	align-items: end;
	display: grid;
	gap: .55rem;
	justify-items: start;
}

.zpc-mijn-wedstrijden__form label {
	color: var(--zpc-mw-muted);
	display: grid;
	font-size: .9rem;
	font-weight: 650;
	gap: .35rem;
	line-height: 1.35;
	width: min(100%, 34rem);
}

.zpc-mijn-wedstrijden__form textarea {
	border: 1px solid var(--zpc-mw-border);
	border-radius: 6px;
	font: inherit;
	min-height: 5rem;
	padding: .55rem .65rem;
	width: 80%;
}

.zpc-mijn-wedstrijden__coach-overname {
	border-top: 1px solid var(--zpc-mw-border);
	display: grid;
	gap: .65rem;
	padding-top: .75rem;
}

.zpc-mijn-wedstrijden__coach-overname-form {
	display: grid;
	gap: .7rem;
	justify-items: start;
}

.zpc-mijn-wedstrijden__coach-overname-label,
.zpc-mijn-wedstrijden__coach-overname-form label {
	color: var(--zpc-mw-text);
	display: flex;
	font-size: .9rem;
	font-weight: 650;
	gap: .35rem;
	line-height: 1.35;
	width: min(100%, 34rem);
align-items: center;
    border-bottom: 1px solid var(--zpc-mw-border);
    padding-bottom: .55rem;
	}

.zpc-mijn-wedstrijden__coach-overname-picker {
	border: 1px solid var(--zpc-mw-border);
	border-radius: 6px;
	display: grid;
	gap: .45rem;
	max-height: 12rem;
	overflow: auto;
	padding: .65rem;
	width: min(100%, 34rem);
}

.zpc-mijn-wedstrijden__coach-overname-dropdown {
	width: min(100%, 34rem);
}

.zpc-mijn-wedstrijden__coach-overname-dropdown summary {
	background: #fff;
	border: 1px solid var(--zpc-mw-border);
	border-radius: 6px;
	cursor: pointer;
	font-weight: 700;
	padding: .55rem .65rem;
}

.zpc-mijn-wedstrijden__coach-overname-dropdown[open] summary {
	border-end-end-radius: 0;
	border-end-start-radius: 0;
}

.zpc-mijn-wedstrijden__coach-overname-dropdown .zpc-mijn-wedstrijden__coach-overname-picker {
	border-start-end-radius: 0;
	border-start-start-radius: 0;
	border-top: 0;
	width: 100%;
}

.zpc-mijn-wedstrijden__coach-overname-option {
	align-items: start;
	color: var(--zpc-mw-text);
	display: grid;
	gap: .45rem;
	grid-template-columns: auto 1fr;
}

.zpc-mijn-wedstrijden__coach-overname-option.is-disabled {
	color: var(--zpc-mw-muted);
	cursor: not-allowed;
}

.zpc-mijn-wedstrijden__coach-overname-note {
	display: block;
	font-size: .85rem;
}

.zpc-mijn-wedstrijden__coach-overname-form textarea {
	border: 1px solid var(--zpc-mw-border);
	border-radius: 6px;
	font: inherit;
	min-height: 5rem;
	padding: .55rem .65rem;
	width: 100%;
}

.zpc-mijn-wedstrijden__button {
	background: #0f766e;
	border: 1px solid #0f766e;
	border-radius: 6px;
	color: #fff;
	cursor: pointer;
	font: inherit;
	font-weight: 700;
	line-height: 1.2;
	min-height: 2.35rem;
	padding: .55rem .85rem;
}

.zpc-mijn-wedstrijden__button:hover {
	background: #115e59;
	border-color: #115e59;
}

.zpc-mijn-wedstrijden__button--secondary {
	background: #fff;
	border-color: #b8c3d1;
	color: var(--zpc-mw-text);
}

.zpc-mijn-wedstrijden__button--secondary:hover {
	background: var(--zpc-mw-soft);
	border-color: #9aa8b8;
}

.zpc-mijn-wedstrijden__button:disabled {
	cursor: progress;
	opacity: .65;
}

.zpc-mijn-wedstrijden__action-message {
	color: var(--zpc-mw-muted);
	font-size: .9rem;
	line-height: 1.4;
	min-height: 0;
}

.zpc-mijn-wedstrijden__action-message:empty {
	display: none;
}

.zpc-mijn-wedstrijden__action-message.is-success {
	color: var(--zpc-mw-success-text);
}

.zpc-mijn-wedstrijden__action-message.is-error {
	color: var(--zpc-mw-danger-text);
}

.zpc-mijn-wedstrijden__mail-notice {
	background: var(--zpc-mw-danger-bg);
	border-radius: 6px;
	color: var(--zpc-mw-danger-text);
	font-size: .92rem;
	line-height: 1.45;
	margin: 0;
	padding: .65rem .75rem;
}

.zpc-mijn-wedstrijden__mail-notice a {
	color: inherit;
	font-weight: 700;
}

.zpc-mijn-wedstrijden__late-form-link {
	background: transparent;
	border: 0;
	color: inherit;
	cursor: pointer;
	font: inherit;
	font-weight: 700;
	margin: 0;
	padding: 0;
	text-decoration: underline;
}

.zpc-mijn-wedstrijden__late-form-link:focus-visible {
	border-radius: 2px;
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

.zpc-late-unsubscribe-modal[hidden] {
	display: none;
}

.zpc-late-unsubscribe-modal {
	inset: 0;
	position: fixed;
	z-index: 10000;
}

.zpc-late-unsubscribe-modal__backdrop {
	background: rgba(15, 23, 42, .62);
	inset: 0;
	position: absolute;
}

.zpc-late-unsubscribe-modal__dialog {
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 24px 80px rgba(15, 23, 42, .3);
	box-sizing: border-box;
	left: 50%;
	max-height: min(88vh, 50rem);
	max-width: min(94vw, 46rem);
	overflow: auto;
	padding: 1.25rem;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}

.zpc-late-unsubscribe-modal__dialog:focus {
	outline: 0;
}

.zpc-late-unsubscribe-modal__header {
	align-items: flex-start;
	display: flex;
	gap: 1rem;
	justify-content: space-between;
	margin-block-end: 1rem;
}

.zpc-late-unsubscribe-modal__header h2 {
	margin: 0;
}

.zpc-late-unsubscribe-modal__close {
	background: transparent;
	border: 0;
	color: inherit;
	cursor: pointer;
	font-size: 1.75rem;
	line-height: 1;
	padding: .1rem .2rem;
}

.zpc-late-unsubscribe-modal__content > :first-child {
	margin-block-start: 0;
}

.zpc-late-unsubscribe-modal__content > :last-child {
	margin-block-end: 0;
}

.zpc-mijn-wedstrijden__badges {
	display: flex;
	flex-wrap: wrap;
	gap: .35rem;
	justify-self: end;
    justify-content: flex-end;

}

.zpc-mijn-wedstrijden__badge {
	background: var(--zpc-mw-success-bg);
	border-radius: 999px;
	color: var(--zpc-mw-success-text);
	display: inline-flex;
	font-size: .78rem;
	font-weight: 700;
	line-height: 1.2;
	padding: .25rem .6rem;
}

.zpc-mijn-wedstrijden__badge.is-afgemeld {
	background: var(--zpc-mw-danger-bg);
	color: var(--zpc-mw-danger-text);
	text-decoration: line-through;
}

.zpc-mijn-wedstrijden__item.is-cancelled .zpc-mijn-wedstrijden__badge {
	background: var(--zpc-mw-danger-bg);
	color: var(--zpc-mw-danger-text);
}

.wp-block-zpc-wedstrijd-pdfs .zpc-wedstrijd-pdfs {
	display: grid;
	gap: .4rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.wp-block-zpc-wedstrijd-pdfs .zpc-wedstrijd-pdfs a {
	display: inline-flex;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: .16em;
}

.zpc-mijn-zwemmer-profiel,
.zpc-mijn-training-afmelden {
	--zpc-profile-border: #d7dee8;
	--zpc-profile-muted: #617083;
	--zpc-profile-soft: #f6f8fb;
	--zpc-profile-text: #172033;
	color: var(--zpc-profile-text);
	display: grid;
	gap: .85rem;
}

.zpc-mijn-zwemmer-profiel__card {
	background: #fff;
	border: 1px solid var(--zpc-profile-border);
	border-radius: 8px;
	display: grid;
	gap: .85rem;
	padding: 1rem;
}

.zpc-mijn-zwemmer-profiel__title {
	font-size: 1.1rem;
	line-height: 1.25;
	margin: 0;
}

.zpc-mijn-zwemmer-profiel__form {
	display: grid;
	gap: .85rem;
}

.zpc-mijn-zwemmer-profiel__fields {
	display: grid;
	gap: .55rem;
	margin: 0;
}

.zpc-mijn-zwemmer-profiel__field {
	background: var(--zpc-profile-soft);
	border-radius: 6px;
	display: grid;
	gap: .25rem;
	grid-template-columns: minmax(8rem, .34fr) minmax(0, 1fr);
	padding: .65rem .75rem;
}

.zpc-mijn-zwemmer-profiel__field dt {
	color: var(--zpc-profile-muted);
	font-size: .9rem;
	font-weight: 700;
	line-height: 1.35;
}

.zpc-mijn-zwemmer-profiel__field dd {
	line-height: 1.4;
	margin: 0;
	min-width: 0;
}

.zpc-mijn-zwemmer-profiel__field input,
.zpc-mijn-zwemmer-profiel__field textarea {
	border: 1px solid var(--zpc-profile-border);
	border-radius: 6px;
	font: inherit;
	padding: .5rem .6rem;
	width: min(100%, 34rem);
}

.zpc-mijn-zwemmer-profiel__field input[type="radio"] {
	width: auto;
}

.zpc-mijn-zwemmer-profiel__field textarea {
	min-height: 5rem;
}

.zpc-mijn-zwemmer-profiel__field--training-afmeldingen dd {
	display: grid;
	gap: .75rem;
}

.zpc-mijn-zwemmer-training-afmelding-form {
	display: grid !important;
	gap: .75rem;
	grid-template-columns: minmax(0, 1fr) !important;
	justify-items: start;
}

.zpc-mijn-zwemmer-training-afmelding-form > p {
	display: grid !important;
	gap: .25rem;
	grid-template-columns: minmax(0, 1fr) !important;
	justify-items: start;
	margin: 0;
}

.zpc-mijn-zwemmer-training-afmelding-form p.zpc-mijn-zwemmer-training-afmelding-form__actions {
	width: auto;
}

.zpc-mijn-zwemmer-training-afmelding-form input[data-zpc-mijn-zwemmer-training-input] {
	display: block;
	max-width: 100%;
	width: min(100%, 34rem);
}

.zpc-mijn-zwemmer-training-afmelding-form__button {
	border: 0 !important;
	box-shadow: none !important;
	font-size: .9rem;
	height: auto !important;
	justify-self: start;
	line-height: 1.2;
	min-height: 0 !important;
	outline: 0;
	padding: .45rem .75rem !important;
	width: auto !important;
}

.zpc-mijn-zwemmer-training-afmeldingen {
	display: grid;
	gap: .45rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.zpc-mijn-zwemmer-training-afmeldingen li {
	display: grid;
	gap: .15rem;
    grid-template-columns: auto auto 160px;
    background: var(--wp--preset--color--aqua-pale);
    align-items: center;
    padding: 0 4px;
	justify-content: space-between;
				border-radius: 4px;
}

.zpc-mijn-zwemmer-training-afmelding-cancel {
	margin-top: .25rem;
}

.zpc-mijn-zwemmer-training-afmelding-cancel__button {
	appearance: none;
	background: transparent;
	border: 0;
	color: inherit;
	cursor: pointer;
	font: inherit;
	padding: 0;
	text-align: left;
    font-size: 0.8rem;
    display: flex;
    align-items: center;

}

.zpc-mijn-zwemmer-training-afmelding-cancel__button span {
	font-weight: 600;
    margin-right: 8px;
    color: red;
    font-size: 1rem;

}

.zpc-mijn-zwemmer-training-afmelding-cancel .zpc-mijn-wedstrijden__action-message {
	margin: .25rem 0 0;
}

.zpc-mijn-zwemmer-training-afmeldingen span {
	/* color: var(--zpc-profile-muted); */
}

.zpc-mijn-zwemmer-training-afmeldingen__empty {
	color: var(--zpc-profile-muted);
	margin: 0;
}

.zpc-mijn-zwemmer-training-afmelding-form__mode {
	display: grid;
	gap: .35rem;
}

.zpc-mijn-zwemmer-training-afmelding-form__mode label {
	align-items: center;
	display: flex;
	gap: .4rem;
}

.zpc-mijn-zwemmer-training-afmelding-form [hidden] {
	display: none !important;
}

.zpc-training-afmeldingen-per-datum {
	display: grid;
	gap: 1rem;
}

.zpc-training-afmeldingen-per-datum [hidden] {
	display: none !important;
}

.zpc-training-afmeldingen-per-datum .zpc-panel {
	background: var(--zpc-profile-soft, #f6f8fb);
	border-radius: 6px;
	display: grid;
	gap: .75rem;
	padding: 1rem;
}

.zpc-training-afmeldingen-per-datum__section {
	display: grid;
	gap: .75rem;
}

.zpc-training-afmeldingen-per-datum .zpc-zwemmerbeheer-afmeldingen__header {
	align-items: end;
	display: grid;
	gap: .75rem;
	grid-template-columns: minmax(0, 1fr) minmax(10rem, 14rem);
}

.zpc-training-afmeldingen-per-datum .zpc-zwemmerbeheer-afmeldingen__header h3 {
	font-size: 1.35rem;
	line-height: 1.2;
	margin: 0;
}

.zpc-training-afmeldingen-per-datum .zpc-zwemmerbeheer-afmeldingen__header label {
	display: grid;
	gap: .35rem;
}

.zpc-training-afmeldingen-per-datum .zpc-zwemmerbeheer-afmeldingen__header input {
	border: 1px solid var(--zpc-profile-border, #d7dee8);
	border-radius: 6px;
	font: inherit;
	padding: .5rem .6rem;
}

.zpc-training-afmeldingen-per-datum__day {
	display: grid;
	gap: .45rem;
    margin-bottom: 24px;
    padding: 8px;
    background: var(--wp--preset--color--basiskleur);
    border-radius: 8px;

}

.zpc-training-afmeldingen-per-datum__date {
	font-size: 1.1rem;
	line-height: 1.25;
	margin: 0;
	color:	var(--wp--preset--color--white);
}

.zpc-training-afmeldingen-per-datum__list {
	display: grid;
	gap: .35rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.zpc-training-afmeldingen-per-datum__item {
	background: #fff;
	border: 1px solid var(--zpc-profile-border, #d7dee8);
	border-radius: 6px;
	display: grid;
	gap: .1rem;
	padding: .55rem .65rem;
}

.zpc-training-afmeldingen-per-datum__swimmer {
	font-weight: 700;
}

.zpc-training-afmeldingen-per-datum__reason,
.zpc-training-afmeldingen-per-datum__empty {
	color: var(--zpc-profile-muted, #617083);
}

.zpc-training-afmeldingen-totalen {
	display: grid;
	gap: 1rem;
}

.zpc-training-afmeldingen-totalen [hidden] {
	display: none !important;
}

.zpc-training-afmeldingen-totalen__header {
	align-items: end;
	display: flex;
	justify-content: flex-end;
}

.zpc-training-afmeldingen-totalen__header label {
	display: grid;
	gap: .35rem;
	min-width: min(100%, 16rem);
}

.zpc-training-afmeldingen-totalen__header select {
	border: 1px solid var(--zpc-profile-border, #d7dee8);
	border-radius: 6px;
	font: inherit;
	padding: .5rem .6rem;
}

.zpc-training-afmeldingen-totalen__list {
	display: grid;
	gap: 0;
}

.zpc-training-afmeldingen-totalen__row {
	border-bottom: 1px solid var(--zpc-profile-border, #d7dee8);
	display: grid;
	gap: .75rem;
	grid-template-columns: minmax(12rem, 1.6fr) repeat(4, minmax(7rem, 1fr));
	padding: .7rem .75rem;
}

.zpc-training-afmeldingen-totalen__row--head {
	color: var(--zpc-profile-muted, #617083);
	font-size: .85rem;
	font-weight: 700;
}

.zpc-training-afmeldingen-totalen__row > span:not(:first-child) {
	text-align: right;
}

.zpc-training-afmeldingen-totalen__name {
	font-weight: 700;
}

.zpc-training-afmeldingen-totalen__label {
	display: none;
}

.zpc-training-afmeldingen-totalen__empty {
	color: var(--zpc-profile-muted, #617083);
}

.zpc-coach-overzicht {
	display: grid;
	gap: 1rem;
}

.zpc-has-modal {
	overflow: hidden;
}

.zpc-coach-overzicht__card {
	background: #fff;
	border: 1px solid var(--zpc-profile-border, #d7dee8);
	border-radius: 8px;
	display: grid;
	gap: 1rem;
	padding: 1rem;
}

.zpc-coach-overzicht__summary {
	align-items: start;
	display: grid;
	gap: 1rem;
	grid-template-columns: minmax(0, 1fr) auto;
}

.zpc-coach-overzicht__name {
	font-size: 1.15rem;
	line-height: 1.25;
	margin: 0 0 .2rem;
}

.zpc-coach-overzicht__email,
.zpc-coach-overzicht__muted,
.zpc-coach-overzicht__empty {
	color: var(--zpc-profile-muted, #617083);
}

.zpc-coach-overzicht__count {
	align-items: end;
	display: grid;
	gap: .1rem;
	justify-items: end;
}

.zpc-coach-overzicht__count span {
	color: var(--zpc-profile-muted, #617083);
	font-size: .85rem;
	font-weight: 700;
}

.zpc-coach-overzicht__count strong {
	font-size: 1.75rem;
	line-height: 1;
}

.zpc-coach-overzicht__matches summary {
	cursor: pointer;
	font-weight: 700;
}

.zpc-coach-overzicht__matches ul,
.zpc-coach-overzicht-modal__swimmers {
	display: grid;
	gap: .6rem;
	list-style: none;
	margin: .75rem 0 0;
	padding: 0;
}

.zpc-coach-overzicht__matches li,
.zpc-coach-overzicht-modal__swimmers li {
	background: var(--zpc-profile-soft, #f6f8fb);
	border-radius: 6px;
	display: grid;
	gap: .15rem;
	padding: .7rem;
}

.zpc-coach-overzicht__actions {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: .75rem;
}

.zpc-coach-overzicht__modal-button,
.zpc-coach-overzicht__remove-form {
	justify-self: start;
}

.zpc-coach-overzicht__remove-form {
	display: grid;
	gap: .35rem;
	position: relative;
}

.zpc-coach-overzicht__remove-button {
	background: transparent;
	border: 0;
	color: #991b1b;
	cursor: pointer;
	font: inherit;
	font-weight: 700;
	padding: 0;
	text-decoration: underline;
}

.zpc-coach-overzicht__remove-button:disabled {
	color: var(--zpc-profile-muted, #617083);
	cursor: not-allowed;
	opacity: .7;
}

.zpc-coach-overzicht__remove-notice,
.zpc-coach-overzicht__message {
	margin: 0;
}

.zpc-coach-overzicht__remove-notice {
	display: none;
    text-align: center;
    font-size: 0.8rem;
font-weight: 600;
}

.zpc-coach-overzicht__remove-form:hover .zpc-coach-overzicht__remove-notice,
.zpc-coach-overzicht__remove-form:focus-within .zpc-coach-overzicht__remove-notice {
	display: block;
}

.zpc-coach-overzicht__remove-notice,
.zpc-coach-overzicht__message.is-error {
	color: #991b1b;
}

.zpc-coach-overzicht__message.is-success {
	color: #166534;
}

.zpc-coach-overzicht-modal {
	inset: 0;
	position: fixed;
	z-index: 9999;
}

.zpc-coach-overzicht-modal__backdrop {
	background: rgba(15, 23, 42, .55);
	inset: 0;
	position: absolute;
}

.zpc-coach-overzicht-modal__dialog {
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 24px 80px rgba(15, 23, 42, .28);
	left: 50%;
	max-height: min(80vh, 42rem);
	max-width: min(92vw, 42rem);
	overflow: auto;
	padding: 1.25rem;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}

.zpc-coach-overzicht-modal__header {
	align-items: start;
	display: flex;
	gap: 1rem;
	justify-content: space-between;
	margin-block-end: 1rem;
}

.zpc-coach-overzicht-modal__header h3 {
	margin: 0;
}

.zpc-coach-overzicht-modal__close {
	background: transparent;
	border: 0;
	cursor: pointer;
	font-size: 1.75rem;
	line-height: 1;
	padding: .1rem .2rem;
}

.zpc-coach-gebruiker-formulier__form {
	background: #f5f7fb;
	border: 0;
	border-radius: 8px;
	display: grid;
	gap: 1.25rem;
	padding: 1.25rem;
}

.zpc-coach-gebruiker-formulier__title {
	margin: 0;
}

.zpc-coach-gebruiker-formulier__dropdown {
	display: grid;
	gap: .35rem;
}

.zpc-coach-gebruiker-formulier__toggle {
	align-items: center;
	background: #fff;
	border: 1px solid var(--zpc-profile-border, #d7dee8);
	border-radius: 6px;
	color: inherit;
	cursor: pointer;
	display: flex;
	font: inherit;
	font-weight: 700;
	justify-content: space-between;
	line-height: 1.3;
	padding: .85rem 1rem;
	text-align: left;
	width: 100%;
}

.zpc-coach-gebruiker-formulier__chevron {
	border-bottom: 3px solid currentColor;
	border-right: 3px solid currentColor;
	display: inline-block;
	height: .55rem;
	margin-inline-start: 1rem;
	transform: rotate(45deg);
	width: .55rem;
}

.zpc-coach-gebruiker-formulier__toggle[aria-expanded="true"] .zpc-coach-gebruiker-formulier__chevron {
	transform: rotate(225deg);
}

.zpc-coach-gebruiker-formulier__menu {
	background: #fff;
	border: 1px solid var(--zpc-profile-border, #d7dee8);
	border-radius: 8px;
	display: grid;
	gap: 1rem;
	padding: 1rem;
}

.zpc-coach-gebruiker-formulier__menu[hidden] {
	display: none;
}

.zpc-coach-gebruiker-formulier__picker {
	display: grid;
	gap: .75rem;
}

.zpc-coach-gebruiker-formulier__search-label {
	font-weight: 700;
}

.zpc-coach-gebruiker-formulier__options {
	border: 1px solid var(--zpc-profile-border, #d7dee8);
	border-radius: 8px;
	display: grid;
	gap: .35rem;
	max-height: 13rem;
	overflow: auto;
	padding: .75rem;
}

.zpc-coach-gebruiker-formulier__option {
	align-items: center;
	display: grid;
	gap: .5rem;
	grid-template-columns: auto 1fr auto;
	padding: .2rem 0;
}

.zpc-coach-gebruiker-formulier__option.is-disabled {
	color: #6b7788;
	cursor: not-allowed;
}

.zpc-coach-gebruiker-formulier__role {
	color: #166534;
	font-size: .85em;
	font-weight: 700;
}

.zpc-coach-gebruiker-formulier__section {
	border-top: 1px solid var(--zpc-profile-border, #d7dee8);
	display: grid;
	gap: .75rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	padding-top: 1rem;
}

.zpc-coach-gebruiker-formulier__section h4 {
	grid-column: 1 / -1;
	margin: 0;
}

.zpc-coach-gebruiker-formulier__wide,
.zpc-coach-gebruiker-formulier__help {
	grid-column: 1 / -1;
}

.zpc-coach-gebruiker-formulier__help {
	margin: 0;
}

.zpc-coach-gebruiker-formulier__actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	justify-content: flex-end;
}

.zpc-coach-gebruiker-formulier label {
	display: grid;
	gap: .35rem;
}

.zpc-coach-gebruiker-formulier input[type="search"],
.zpc-coach-gebruiker-formulier input[type="text"],
.zpc-coach-gebruiker-formulier input[type="email"] {
	border: 1px solid var(--zpc-profile-border, #d7dee8);
	border-radius: 6px;
	padding: .65rem .75rem;
}

.zpc-coach-gebruiker-formulier button[type="submit"] {
	justify-self: start;
}

.zpc-coach-gebruiker-formulier__remove {
	background: transparent;
	border: 0;
	color: #991b1b;
	cursor: pointer;
	font: inherit;
	font-weight: 700;
	padding: 0;
	text-decoration: underline;
}

.zpc-coach-gebruiker-formulier__message {
	margin: 0;
}

.zpc-coach-gebruiker-formulier__message.is-success {
	color: #166534;
}

.zpc-coach-gebruiker-formulier__message.is-error,
.zpc-coach-gebruiker-formulier__empty {
	color: #991b1b;
}

@media (max-width: 700px) {
	.zpc-coach-gebruiker-formulier__section {
		grid-template-columns: 1fr;
	}
}

.zpc-trainingsmoment-banen__list {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.zpc-trainingsmoment-banen__link {
	background: var(--zpc-profile-soft, #f6f8fb);
	border: 1px solid var(--zpc-profile-border, #d7dee8);
	border-radius: 999px;
	display: inline-flex;
	font-weight: 700;
	line-height: 1.2;
	padding: .45rem .7rem;
	text-decoration: none;
}

.zpc-trainingsmoment-parent-term__title {
	color: var(--zpc-profile-muted, #64748b);
	display: block;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.3;
}

.zpc-trainingsmoment-afmeldingen {
	margin-block: 1rem;
}
.zpc-trainingsmoment-afmeldingen  .zpc-zwemmerbeheer-afmeldingen__list{
	margin: 0;
}
.zpc-trainingsmoment-afmeldingen__item {
	display: grid;
	gap: .25rem;
}
.wp-block-categories-dropdown select{
    border-radius: 8px;
    padding: 8px;
    font-size: var(--wp--preset--font-size--normal);

}
@media (max-width: 640px) {
	.zpc-coach-overzicht__summary {
		grid-template-columns: 1fr;
	}

	.zpc-coach-overzicht__count {
		justify-items: start;
	}

	.zpc-training-afmeldingen-per-datum .zpc-zwemmerbeheer-afmeldingen__header {
		grid-template-columns: 1fr;
	}

	.zpc-training-afmeldingen-totalen__header {
		justify-content: stretch;
	}

	.zpc-training-afmeldingen-totalen__row {
		background: #fff;
		border: 1px solid var(--zpc-profile-border, #d7dee8);
		border-radius: 6px;
		gap: .55rem;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		margin-block-end: .6rem;
	}

	.zpc-training-afmeldingen-totalen__row--head {
		display: none;
	}

	.zpc-training-afmeldingen-totalen__row > span:first-child {
		grid-column: 1 / -1;
	}

	.zpc-training-afmeldingen-totalen__row > span:not(:first-child) {
		display: grid;
		gap: .15rem;
		text-align: left;
	}

	.zpc-training-afmeldingen-totalen__label {
		color: var(--zpc-profile-muted, #617083);
		display: block;
		font-size: .78rem;
		font-weight: 700;
		line-height: 1.2;
	}
}
.wp-block-zpc-wedstrijd-location a{
 font-family: inherit;
 font-size: inherit;
}

.zpc-beschikbaarheid {
	border: 1px solid var(--zpc-profile-border, #d7dee8);
	border-radius: 8px;
	padding: 8px;
}

.zpc-beschikbaarheid__accordion-heading,
.zpc-beschikbaarheid__swimmer h4, 
.zpc-beschikbaarheid__swimmer h6,
.zpc-beschikbaarheid__swimmer h5,
.zpc-beschikbaarheid__swimmer p {
	margin: 0;
}

.zpc-beschikbaarheid button.zpc-beschikbaarheid__accordion-toggle {
	align-items: center;
	background: transparent;
	border: 0;
	color: inherit;
	display: flex;
	font: inherit;
	font-weight: inherit;
	gap: 1rem;
	justify-content: space-between;
	padding: 0;
	text-align: left;
	width: 100%;
}

.zpc-beschikbaarheid__accordion-icon {
	border-bottom: 2px solid currentColor;
	border-right: 2px solid currentColor;
	flex: 0 0 auto;
	height: .55rem;
	margin-inline-end: .2rem;
	transform: rotate(45deg);
	transition: transform .2s ease;
	width: .55rem;
}

.zpc-beschikbaarheid__accordion-toggle[aria-expanded="true"] .zpc-beschikbaarheid__accordion-icon {
	transform: rotate(225deg);
}

.zpc-beschikbaarheid__accordion-panel {
	display: grid;
	gap: .85rem;
	padding-block-start: .85rem;
}

.zpc-beschikbaarheid__accordion-panel[hidden] {
	display: none;
}

.zpc-beschikbaarheid__swimmer {
	background: var(--zpc-profile-soft, #f6f8fb);
	border-radius: 7px;
	display: grid;
	gap: .65rem;
	padding: .5rem;

    background: var(--wp--preset--color--aqua-pale);

}

.zpc-beschikbaarheid__swimmer.is-unavailable {
	border-inline-start: 4px solid #b42318;
    background-color: #cf2e2e1c;

}

.zpc-beschikbaarheid__toggle {
	align-items: center;
	display: flex;
	font-weight: 700;
	gap: .5rem;
}

.zpc-beschikbaarheid__details {
	display: grid;
	gap: .45rem;
}

.zpc-beschikbaarheid__details[hidden] {
	display: none;
}

.zpc-beschikbaarheid__details textarea {
	box-sizing: border-box;
	min-height: 5rem;
	width: 100%;
}

.zpc-beschikbaarheid__actions {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
}

.zpc-beschikbaarheid button, .zpc-beschikbaarheid .wp-block-button__link  {
	cursor: pointer;
    height: fit-content;
    width: fit-content;

}
.zpc-beschikbaarheid .wp-block-button__link.is-style-outline {
	    background: transparent none;
    background-color: transparent;
    border-radius: 8px;
    border-color: var(--wp--preset--color--primary);
    border-width: 2px;
    border-style: solid;
    color: var(--wp--preset--color--primary);
    padding-right: 1.33em;
    padding-left: 1.33em;
}

.zpc-beschikbaarheid__notice,
.zpc-beschikbaarheid__message {
	color: var(--zpc-profile-muted, #64748b);
}

.zpc-beschikbaarheid__message.is-success {
	color: #166534;
}

.zpc-beschikbaarheid__message.is-error {
	color: #b42318;
}

.zpc-beschikbaarheid__privacy-hint {
	color: var(--zpc-profile-muted, #64748b);
	font-size: .9em;
	margin: 0;
}

.zpc-account-verwijderen {
	display: grid;
	gap: 1rem;
}

.zpc-account-verwijderen > * {
	margin-block: 0;
}

.zpc-account-verwijderen__confirmation {
	border: 2px solid #b42318;
	border-radius: 8px;
	display: grid;
	gap: 1rem;
	padding: 1rem;
}

.zpc-account-verwijderen__confirmation[hidden] {
	display: none;
}

.zpc-account-verwijderen__confirmation form {
	display: grid;
	gap: .75rem;
}

.zpc-account-verwijderen__confirmation input[type="password"] {
	box-sizing: border-box;
	max-width: 32rem;
	width: 100%;
	padding: 8px;
}

.zpc-account-verwijderen__checkbox {
	align-items: center;
	display: flex;
	gap: .5rem;
}

.zpc-account-verwijderen__actions {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
}
.zpc-account-verwijderen__actions  button.wp-block-button__link, .zpc-koppelverzoeken__actions  button.wp-block-button__link {
    height: fit-content;
    width: fit-content;
}
.zpc-account-verwijderen__open,
.zpc-account-verwijderen__submit,
.zpc-account-verwijderen__actions button {
	cursor: pointer;
	width: fit-content;
}

.zpc-account-verwijderen__submit {
	background: #b42318;
	color: #fff;
}

.zpc-account-verwijderen__warning,
.zpc-account-verwijderen__message.is-error {
	color: #b42318;
}

.zpc-account-verwijderen__message.is-success {
	color: #166534;
}

.zpc-zwemmer-koppelen,
.zpc-zwemmer-koppelen__form,
.zpc-koppelverzoeken,
.zpc-koppelverzoeken__form {
	display: grid;
	gap: 1rem;
}

.zpc-zwemmer-koppelen > *,
.zpc-koppelverzoeken > * {
	margin-block: 0;
}

.zpc-zwemmer-koppelen__form input,
.zpc-zwemmer-koppelen__form select,
.zpc-koppelverzoeken__form input[type="search"] {
	box-sizing: border-box;
	max-width: 36rem;
	padding: 8px;
	width: 100%;
}

.zpc-zwemmer-koppelen__pending {
	border-left: 4px solid currentColor;
	padding-left: .75rem;
}

.zpc-zwemmer-koppelen__message.is-success,
.zpc-koppelverzoeken__message.is-success {
	color: #166534;
}

.zpc-zwemmer-koppelen__message.is-error,
.zpc-koppelverzoeken__message.is-error,
.zpc-koppelverzoeken__status.is-error {
	color: #b42318;
}

.zpc-koppelverzoeken__list {
	display: grid;
	gap: 1.5rem;
}

.zpc-koppelverzoeken__request {
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	display: grid;
	gap: 1rem;
	padding: 1rem;
}

.zpc-koppelverzoeken__request > * {
	margin-block: 0;
}

.zpc-koppelverzoeken__details {
	display: grid;
	grid-template-columns: minmax(9rem, auto) 1fr;
	margin: 0;
}

.zpc-koppelverzoeken__details dt,
.zpc-koppelverzoeken__details dd {
	border-bottom: 1px solid #e2e8f0;
	margin: 0;
	padding: .4rem 0;
}

.zpc-koppelverzoeken__details dt {
	font-weight: 700;
	padding-right: 1rem;
}

.zpc-koppelverzoeken__swimmers {
	display: grid;
	gap: .5rem;
}

.zpc-koppelverzoeken__swimmer-option,
.zpc-koppelverzoeken__confirmation {
	align-items: flex-start;
	display: flex;
	gap: .5rem;
}

.zpc-koppelverzoeken__actions {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
}

.zpc-koppelverzoeken button,
.zpc-zwemmer-koppelen button {
	cursor: pointer;
}

@media (max-width: 640px) {
	.zpc-mijn-wedstrijden__summary {
		display: flex;
		flex-direction: column;
	}

	.zpc-mijn-wedstrijden__badges {
		justify-self: start;
	}

	.zpc-mijn-zwemmer-profiel__field {
		grid-template-columns: 1fr;
	}

	.zpc-mijn-zwemmer-training-afmelding-form {
		grid-template-columns: 1fr;
	}
	.zpc-mijn-zwemmer-training-afmeldingen li {

    grid-template-columns: auto ;
 
}

	.zpc-koppelverzoeken__details {
		grid-template-columns: 1fr;
	}

	.zpc-koppelverzoeken__details dt {
		border-bottom: 0;
		padding-bottom: 0;
	}
}
