/**
 * ProCoach Events — front-end registration form styles.
 *
 * Deliberately minimal and namespaced (procoach-form*). Your designers can
 * override any of this in the theme without touching the plugin.
 */

.procoach-form {
	max-width: 520px;
	margin: 1.5em 0;
	padding: 24px;
	border: 1px solid #e2e2e2;
	border-radius: 10px;
	background: #fff;
}

.procoach-form__title {
	margin: 0 0 16px;
	font-size: 1.25em;
}

.procoach-form__row {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin: 0 0 14px;
}

.procoach-form__row label {
	font-weight: 600;
	font-size: 0.9em;
}

.procoach-form__row input {
	padding: 10px 12px;
	border: 1px solid #c9c9c9;
	border-radius: 6px;
	font-size: 1em;
	width: 100%;
	box-sizing: border-box;
}

.procoach-form__submit {
	display: inline-block;
	padding: 11px 22px;
	border: 0;
	border-radius: 6px;
	background: #2563eb;
	color: #fff;
	font-size: 1em;
	font-weight: 600;
	cursor: pointer;
}
.procoach-form__submit:hover {
	background: #1d4ed8;
}

.procoach-form__notice {
	padding: 12px 14px;
	border-radius: 6px;
	margin-bottom: 16px;
	font-size: 0.95em;
}
.procoach-form__notice--ok {
	background: #e6f4ea;
	color: #1e7e34;
}
.procoach-form__notice--err {
	background: #fdecea;
	color: #b32d2e;
}

.procoach-form--error {
	max-width: 520px;
	padding: 16px;
	border: 1px dashed #c9c9c9;
	border-radius: 8px;
	color: #646970;
}

/* --- Moderator "Take attendance" button + participants list ------------ */
.procoach-modbar {
	max-width: 520px;
	margin: 14px 0;
}
.procoach-modbar__btn {
	display: inline-block;
	padding: 9px 16px;
	background: #111827;
	color: #fff;
	border-radius: 6px;
	text-decoration: none;
	font-weight: 600;
}
.procoach-modbar__btn:hover {
	background: #000;
}
.procoach-plist {
	max-width: 520px;
	margin: 1.75em 0;
}
.procoach-plist__title {
	margin: 0 0 10px;
}
.procoach-plist__search {
	margin-bottom: 10px;
}
.procoach-plist__table {
	width: 100%;
	border-collapse: collapse;
	background: #fff;
	border: 1px solid #e6e6e6;
	border-radius: 8px;
	overflow: hidden;
}
.procoach-plist__table td {
	border-bottom: 1px solid #eee;
	padding: 9px 12px;
}
.procoach-plist__table tr:last-child td {
	border-bottom: 0;
}

/* --- Certificate download page ----------------------------------------- */
.procoach-cert {
	max-width: 520px;
	margin: 1.5em 0;
	padding: 24px;
	border: 1px solid #e2e2e2;
	border-radius: 10px;
	background: #fff;
}
.procoach-cert__title { margin: 0 0 8px; }
.procoach-cert__lead { margin: 0 0 16px; }
.procoach-cert__row {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin: 0 0 14px;
}
.procoach-cert__row label { font-weight: 600; font-size: 0.9em; }
.procoach-cert__row input {
	padding: 10px 12px;
	border: 1px solid #c9c9c9;
	border-radius: 6px;
	font-size: 1em;
	width: 100%;
	box-sizing: border-box;
}
.procoach-cert__btn {
	display: inline-block;
	padding: 11px 22px;
	border: 0;
	border-radius: 6px;
	background: #2563eb;
	color: #fff;
	font-size: 1em;
	font-weight: 600;
	text-decoration: none;
	cursor: pointer;
}
.procoach-cert__btn:hover { background: #1d4ed8; color: #fff; }
.procoach-cert__note { font-size: 0.85em; color: #787c82; }
.procoach-cert__notice {
	padding: 12px 14px;
	border-radius: 6px;
	margin-bottom: 16px;
	font-size: 0.95em;
}
.procoach-cert__notice--err { background: #fdecea; color: #b32d2e; }

/* --- Front-end moderator attendance page ------------------------------- */
.procoach-att-fe {
	margin: 1.5em 0;
}
.procoach-att-fe--gate {
	padding: 16px 18px;
	border: 1px solid #e2e2e2;
	border-radius: 8px;
	background: #fff;
}
.procoach-att-fe__title {
	margin: 0 0 12px;
}
.procoach-att-fe__notice {
	padding: 10px 14px;
	border-radius: 6px;
	background: #e6f4ea;
	color: #1e7e34;
	margin-bottom: 14px;
}
.procoach-att-fe__events {
	list-style: disc;
	padding-left: 20px;
}
.procoach-att-searchbar {
	margin: 6px 0 12px;
}
.procoach-att-search {
	padding: 9px 12px;
	border: 1px solid #c9c9c9;
	border-radius: 6px;
	font-size: 1em;
	min-width: 260px;
	max-width: 100%;
	box-sizing: border-box;
}
.procoach-att-fe__days {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 12px;
}
.procoach-att-fe__day {
	display: inline-block;
	padding: 8px 14px;
	border: 1px solid #d0d0d5;
	border-radius: 999px;
	text-decoration: none;
	font-weight: 600;
	color: #2c3338;
	background: #f6f7f7;
}
.procoach-att-fe__day.is-active {
	background: #2563eb;
	border-color: #2563eb;
	color: #fff;
}
.procoach-att-fe__scroll {
	overflow-x: auto;
}
.procoach-att-fe__table {
	width: 100%;
	border-collapse: collapse;
	background: #fff;
}
.procoach-att-fe__table th,
.procoach-att-fe__table td {
	border: 1px solid #e6e6e6;
	padding: 10px 12px;
	text-align: center;
	vertical-align: middle;
}
.procoach-att-fe__table th:first-child,
.procoach-att-fe__name {
	text-align: left;
}
.procoach-att-fe__name span {
	color: #787c82;
	font-size: 0.85em;
}
.procoach-att-fe__cb input {
	width: 22px;
	height: 22px;
}
.procoach-att-fe__ok {
	display: inline-block;
	background: #e6f4ea;
	color: #1e7e34;
	border-radius: 999px;
	padding: 1px 8px;
	font-size: 0.8em;
	font-weight: 600;
}
.procoach-att-fe__save {
	margin-top: 14px;
	padding: 11px 22px;
	border: 0;
	border-radius: 6px;
	background: #2563eb;
	color: #fff;
	font-size: 1em;
	font-weight: 600;
	cursor: pointer;
}
.procoach-att-fe__save:hover {
	background: #1d4ed8;
}
