.sportivo-box {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 14px;
	padding: 32px 28px 24px 28px;
	margin-top: 24px;
	box-shadow: 0 2px 12px rgba(30,41,59,0.07);
	transition: box-shadow 0.18s;
}

.sportivo-header {
	margin-bottom: 22px;
}

.sportivo-title {
	font-size: 1.35em;
	font-weight: 600;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 12px;
	color: #22223b;
	letter-spacing: 0.01em;
}

.sportivo-count {
	font-size: 1em;
	color: #64748b;
	font-weight: 400;
}

.sportivo-user p {
	margin: 0 0 7px;
	color: #22223b;
	font-size: 1.08em;
}

.sportivo-info {
	font-size: 1em;
	margin: 18px 0;
	padding: 14px 18px;
	border-left: 5px solid #2563eb;
	background: #f0f6ff;
	border-radius: 7px;
	color: #1e293b;
}

.sportivo-info.success {
	border-color: #22c55e;
	background: #e7fbe9;
}

.sportivo-info.warning {
	border-color: #f59e42;
	background: #fff8e1;
}

.sportivo-msg {
	padding: 14px 18px;
	margin: 18px 0;
	border-left: 5px solid #64748b;
	border-radius: 7px;
	background: #f8fafc;
	color: #1e293b;
}

.sportivo-msg.success { border-color: #22c55e; background: #e7fbe9; }
.sportivo-msg.warning { border-color: #f59e42; background: #fff8e1; }
.sportivo-msg.info    { border-color: #2563eb; background: #eef6fb; }

.sportivo-form {
	margin-top: 14px;
}

.sportivo-btn {
	display: inline-block;
	font-size: 1em;
	padding: 10px 24px;
	border: none;
	border-radius: 7px;
	cursor: pointer;
	transition: background 0.18s, color 0.18s;
	font-weight: 500;
}

.sportivo-btn.primary {
	background-color: #2563eb;
	color: #fff;
}
.sportivo-btn.primary:hover {
	background-color: #1d4ed8;
}

.sportivo-btn.danger {
	background-color: #dc3232;
	color: #fff;
}
.sportivo-btn.danger:hover {
	background-color: #b91c1c;
}

.sportivo-btn.secondary {
	background: #f1f5f9;
	color: #22223b;
	border: 1px solid #d1d5db;
}
.sportivo-btn.secondary:hover {
	background: #e0e7ef;
}

@media screen and (max-width: 768px) {
	.sportivo-box {
		padding: 18px 10px;
	}

	.sportivo-title {
		flex-direction: column;
		align-items: flex-start;
		font-size: 1.1em;
	}

	.sportivo-count {
		margin-left: 0;
		margin-top: 4px;
	}

	.sportivo-user p {
		font-size: 1em;
	}

	.sportivo-info,
	.sportivo-msg {
		font-size: 0.98em;
		padding: 11px 10px;
	}

	.sportivo-btn {
		width: 100%;
		font-size: 1.08em;
		text-align: center;
		padding: 13px;
	}
}

@media screen and (max-width: 480px) {
	.sportivo-title {
		font-size: 1em;
	}

	.sportivo-btn {
		font-size: 1em;
		padding: 11px;
	}
}

