.pta-sus-ec-task-list {
	margin-top: 0.4rem;
	font-size: 12px;
	line-height: 1.35;
}

.pta-sus-ec-task-list ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.35rem;
}

.pta-sus-ec-task-item {
	margin: 0;
}

.pta-sus-ec-task-link,
.pta-sus-ec-task-button {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	border: 1px solid #c8def4;
	background: linear-gradient(180deg, #f7fbff 0%, #edf6ff 100%);
	color: #0f4f83;
	padding: 0.3rem 0.55rem;
	border-radius: 999px;
	text-decoration: none;
	cursor: pointer;
	font-size: 11px;
	line-height: 1.25;
	font-weight: 600;
	transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.pta-sus-ec-task-button:hover,
.pta-sus-ec-task-link:hover {
	background: #e3f1ff;
	border-color: #9ec8ee;
	transform: translateY(-1px);
}

.pta-sus-ec-task-meta {
	display: block;
	font-size: 10px;
	color: #51657a;
	margin-top: 2px;
}

body.pta-sus-ec-modal-open {
	overflow: hidden;
}

.pta-sus-ec-modal {
	display: none;
	position: fixed;
	z-index: 100000;
	inset: 0;
	padding: 1.25rem;
	background: rgba(7, 26, 46, 0.56);
	backdrop-filter: blur(2px);
}

.pta-sus-ec-modal.is-open {
	display: flex;
	align-items: center;
	justify-content: center;
}

.pta-sus-ec-modal-dialog {
	background: #fff;
	border: 1px solid #d4e5f6;
	border-radius: 14px;
	box-shadow: 0 28px 60px rgba(7, 32, 57, 0.25);
	width: min(860px, 96vw);
	max-height: 92vh;
	overflow: auto;
	padding: 1.2rem 1.2rem 1.35rem;
	position: relative;
	animation: ptaSusEcModalIn 180ms ease-out;
}

@keyframes ptaSusEcModalIn {
	from {
		opacity: 0;
		transform: translateY(8px) scale(0.985);
	}
	to {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
}

.pta-sus-ec-modal-close {
	position: absolute;
	right: 0.75rem;
	top: 0.65rem;
	width: 30px;
	height: 30px;
	border: 0;
	background: #f1f7fd;
	border-radius: 999px;
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
	color: #164f7f;
}

.pta-sus-ec-modal-title {
	margin: 0 2.25rem 0.45rem 0;
	font-size: 1.15rem;
	line-height: 1.25;
	color: #0f2f4b;
}

.pta-sus-ec-modal-time,
.pta-sus-ec-modal-spots {
	font-size: 0.92rem;
	color: #47607a;
	margin-bottom: 0.28rem;
}

.pta-sus-ec-modal-description {
	margin: 0.55rem 0 0.95rem;
	font-size: 0.95rem;
	color: #203b52;
}

.pta-sus-ec-modal-actions {
	display: flex;
	gap: 0.5rem;
	flex-wrap: wrap;
	margin-bottom: 0.8rem;
}

.pta-sus-ec-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #0f5f99;
	background: #0f5f99;
	color: #fff;
	padding: 0.44rem 0.74rem;
	border-radius: 8px;
	text-decoration: none;
	cursor: pointer;
	font-size: 0.88rem;
	font-weight: 600;
	line-height: 1.2;
	transition: filter 160ms ease, transform 160ms ease;
}

.pta-sus-ec-button:hover {
	filter: brightness(1.04);
	transform: translateY(-1px);
}

.pta-sus-ec-button.secondary {
	background: #fff;
	color: #0f5f99;
}

.pta-sus-ec-loading {
	font-size: 0.9rem;
	color: #4d6072;
}

.pta-sus-ec-modal-signup {
	background: #f8fbff;
	border: 1px solid #d7e7f8;
	border-radius: 10px;
	padding: 0.85rem;
}

.pta-sus-ec-modal-signup form {
	margin: 0;
}

.pta-sus-ec-modal-signup input[type="text"],
.pta-sus-ec-modal-signup input[type="email"],
.pta-sus-ec-modal-signup input[type="tel"],
.pta-sus-ec-modal-signup input[type="number"],
.pta-sus-ec-modal-signup input[type="password"],
.pta-sus-ec-modal-signup textarea,
.pta-sus-ec-modal-signup select {
	width: 100%;
	max-width: 100%;
	border: 1px solid #c3d9ef;
	border-radius: 7px;
	background: #fff;
	padding: 0.45rem 0.55rem;
	box-sizing: border-box;
}

.pta-sus-ec-modal-signup input[type="submit"],
.pta-sus-ec-modal-signup button[type="submit"] {
	border: 1px solid #0f5f99;
	background: #0f5f99;
	color: #fff;
	border-radius: 8px;
	padding: 0.5rem 0.85rem;
	cursor: pointer;
	font-weight: 600;
}

@media (max-width: 640px) {
	.pta-sus-ec-modal {
		padding: 0.5rem;
	}

	.pta-sus-ec-modal-dialog {
		width: 100%;
		max-height: 95vh;
		border-radius: 10px;
		padding: 0.85rem 0.85rem 1rem;
	}
}
