
/* Module */

/* -- Heading */

.section--module__heading {
	display: flex;
	align-items: center;
	gap: 0.5em;
	border-top-left-radius: var(--border-radius);
	border-top-right-radius: var(--border-radius);
	padding: 0.5em;
	background-color: var(--border-color);
	transition-duration: var(--transition-duration);
}
.section--module__heading:has(input:not([value="0"])),
.section--module__heading:has(input[disabled]) {
	background-color: var(--primary-color);
	color: var(--on-primary-color);
}
.section--module__heading * {
	transition-duration: var(--transition-duration);
}
.section--module__heading h2 {
	margin: 0em;
	margin-right: auto;
	font-size: 1.5em;
}
.section--module__heading:has(input:not([value="0"])) h2,
.section--module__heading:has(input[disabled]) h2 {
	color: inherit;
}
.section--module__heading input {
	-moz-appearance: textfield;
	opacity: 0;
	margin: 0em;
	border: unset;
	width: 4ch;
	padding: 0em;
	background-color: unset;
	text-align: right;
	color: inherit;
}
.section--module__heading input::-webkit-outer-spin-button,
.section--module__heading input::-webkit-inner-spin-button {
	display: none;
	appearance: none;
	-webkite-appearance: none;
	margin: 0em;
}
.section--module__heading input:not([value="0"]) {
	opacity: 1;
}
.section--module__heading span {
	display: flex;
	align-items: center;
	font-size: 1.25em;
	font-weight: bold;
}
.section--module__heading span::before {
	content: "\f00d";
	opacity: 0;
	margin-right: 1ch;
	font: var(--fa-font-solid);
	font-size: 0.7em;
}
.section--module__heading:has(input:not([value="0"])) span::before {
	opacity: 1;
}
.section--module__arrowsContainer {
	display: flex;
	flex-direction: column;
}
.section--module__heading:has(input[disabled]) .section--module__arrowsContainer {
	visibility: hidden;
}
.section--module__increment {
	cursor: pointer;
	color: var(--success-color);
}
.section--module__decrement {
	opacity: 0;
	color: var(--danger-color);
}
.section--module__heading:has(input:not([value="0"])) .section--module__decrement {
	opacity: 1;
	cursor: pointer;
}

/* -- Description */

.section--module__description {
	border: var(--border);
	border-top: unset;
	border-bottom-left-radius: var(--border-radius);
	border-bottom-right-radius: var(--border-radius);
	padding: 0.5em;
	padding-left: 0em;
	transition-duration: var(--transition-duration);
}
.section--module__heading:has(input:not([value="0"])) + .section--module__description,
.section--module__heading:has(input[disabled]) + .section--module__description {
	border-color: var(--primary-color);
}
.section--module__description li[data-bullet="\f058"]::before {
	color: var(--success-color)
}
.section--module__description li[data-bullet="\f057"]::before {
	color: var(--danger-color)
}
.section--module__description a {
	margin-left: 0.5em;
}

/* Bill */

.section--bill {
	display: none;
}
.section--bill:not([data-bill="0"]) {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.section--bill table {
	border-collapse: collapse;
	width: 100%;
	font-size: 1.5em;
}
.section--bill :is(th, td) {
	padding-top: 0.25em;
	padding-bottom: 0.25em;
}
.section--bill th {
	text-align: left;
}
.section--bill td {
	width: 5ch;
	text-align: right;
}
.section--bill__freeTrialRow {
	color: var(--success-color);
}
.section--bill__totalRow {
	border-top: var(--border);
}
.section--bill__footer {
	margin-top: 1em;
	font-size: 1.75em;
	font-weight: bold;
	color: var(--success-color);
	text-align: center;
}