/* Flexa Pricing frontend styles. */

.flexa-pricing-badge {
	display: inline-block;
	padding: 2px 8px;
	border-radius: 3px;
	font-size: 0.8em;
	font-weight: 600;
	line-height: 1.6;
	text-align: center;
}

.price del,
.flexa-pricing-price del {
	opacity: 0.6;
}

.price ins,
.flexa-pricing-price ins {
	text-decoration: none;
	font-weight: 600;
}

.flexa-pricing-table {
	margin: 0 0 1.5em;
}

.flexa-pricing-table__title {
	margin: 0 0 0.5em;
	font-size: 1em;
}

.flexa-pricing-table table {
	width: 100%;
	margin: 0;
	border-collapse: collapse;
}

.flexa-pricing-table th,
.flexa-pricing-table td {
	padding: 0.4em 0.75em;
	text-align: left;
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.flexa-pricing-table thead th {
	font-weight: 600;
	border-bottom-width: 2px;
}

.flexa-pricing-nudge {
	margin: 0 0 1.5em;
	padding: 0.75em 1em;
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: 6px;
	background: rgba(0, 0, 0, 0.02);
}

.flexa-pricing-nudge__message {
	margin: 0 0 0.5em;
	font-weight: 600;
}

.flexa-pricing-nudge__bar {
	height: 8px;
	border-radius: 999px;
	background: rgba(0, 0, 0, 0.1);
	overflow: hidden;
}

.flexa-pricing-nudge__fill {
	display: block;
	height: 100%;
	border-radius: 999px;
	background: #2271b1;
	transition: width 0.3s ease;
}

.flexa-pricing-countdown {
	display: inline-flex;
	align-items: center;
	gap: 0.35em;
	margin: 0.5em 0;
	padding: 0.25em 0.6em;
	border-radius: 4px;
	font-size: 0.9em;
	background: rgba(214, 54, 56, 0.08);
	color: #d63638;
}

.flexa-pricing-countdown__label {
	font-weight: 600;
}

.flexa-pricing-countdown__time {
	font-variant-numeric: tabular-nums;
}

.flexa-pricing-countdown--ended {
	opacity: 0.6;
}

.flexa-pricing-fee-note {
	cursor: help;
}
