body {
	--button-border-radius: 40px;
	--button-bg: transparent;
	--button-stroke: #000;
	--button-stroke-width: 1px;
	--button-text: #000;
	--button-bg-hover: #d8d4cf;
	--button-stroke-hover: #000;
	--button-stroke-width-hover: 1px;
	--button-text-hover: #fff;
	--cursor-stroke: #fff;
    --cursor-fill: #fff;
    --cursor-stroke-width: 1px;
	--button-filler: #000;
	--color-bg: #ccc;
}

.button {
	cursor: pointer;
	-moz-appearance: none;
	-webkit-appearance: none;
	border-width: var(--button-stroke-width);
	border-color: var(--button-stroke);
	border-style: solid;
	color: var(--button-text);
	background: var(--button-bg);
	border-radius: var(--button-border-radius);
	
	padding: 1rem;
	margin: 1rem;
	font-family: inherit;
	font-size: 1.2rem;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.button:focus,
.button--hover {
	outline: none;
	border-width: var(--button-stroke-width-hover);
	border-color: var(--button-stroke-hover);
	color: var(--button-text-hover);
}

.button__filler {
	background: var(--button-filler);
	position: absolute;
	width: 150%;
	height: 200%;
	border-radius: 50%;
	top: -50%;
	left: -25%;
	transform: translate3d(0,75%,0);
}

.button__text, 
.button__text-inner {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}