/* Premier Firewood Referral Program — storefront styles */

/* Color palette. These defaults are overridden by WooCommerce → Premier Firewood Referrals → Settings → Colors. */
:root {
	--pfr-accent: #8a4b20;
	--pfr-accent-text: #ffffff;
	--pfr-accent-soft: rgba(138, 75, 32, 0.07);
	--pfr-accent-faint: rgba(138, 75, 32, 0.04);
	--pfr-accent-border: rgba(138, 75, 32, 0.45);
	--pfr-success: #1e7b34;
	--pfr-success-soft: rgba(30, 123, 52, 0.12);
	--pfr-warning: #8a5a00;
	--pfr-warning-soft: rgba(138, 90, 0, 0.12);
	--pfr-danger: #b32d2e;
	--pfr-danger-soft: rgba(179, 45, 46, 0.1);
}

.premier-firewood-referral-box {
	border: 1px solid rgba(0, 0, 0, 0.12);
	border-left: 4px solid var(--pfr-accent);
	border-radius: 4px;
	padding: 0.85em 1em;
	margin: 0 0 1.5em;
	background: var(--pfr-accent-faint);
}

.premier-firewood-referral-box p,
.premier-firewood-referral-box form {
	margin: 0.35em 0;
}

.premier-firewood-referral-box small {
	display: block;
	opacity: 0.75;
}

.premier-firewood-referral-line.is-muted {
	opacity: 0.8;
}

.premier-firewood-referral-flash.is-error {
	color: var(--pfr-danger);
}

.premier-firewood-referral-flash.is-success {
	color: var(--pfr-success);
}

.premier-firewood-referral-code-form,
.premier-firewood-referral-reward {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5em;
	align-items: center;
}

.premier-firewood-referral-code-form label {
	flex-basis: 100%;
}

.premier-firewood-referral-code-form input[type="text"] {
	max-width: 14em;
	text-transform: uppercase;
}

.premier-firewood-referral-link {
	background: none;
	border: 0;
	padding: 0;
	color: inherit;
	text-decoration: underline;
	cursor: pointer;
	font-size: 0.9em;
}

/* ---------- My Account → Referrals ---------- */

.premier-firewood-referral-dashboard {
	--pfr-border: rgba(0, 0, 0, 0.1);
	--pfr-radius: 8px;
}

.premier-firewood-referral-dashboard h2 {
	margin-bottom: 0.4em;
}

.premier-firewood-referral-dashboard h3 {
	margin: 2em 0 0.75em;
	padding-bottom: 0.4em;
	border-bottom: 2px solid var(--pfr-accent-soft);
}

.premier-firewood-referral-intro {
	font-size: 1.05em;
	line-height: 1.6;
	max-width: 46em;
}

/* Share card */
.premier-firewood-referral-share {
	margin: 1.5em 0;
	padding: 1.25em 1.5em;
	background: var(--pfr-accent-soft);
	border: 1px solid var(--pfr-border);
	border-left: 4px solid var(--pfr-accent);
	border-radius: var(--pfr-radius);
}

.premier-firewood-referral-share-label {
	display: block;
	margin-bottom: 0.4em;
	font-size: 0.8em;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	opacity: 0.75;
}

.premier-firewood-referral-share-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5em;
	align-items: stretch;
}

.premier-firewood-referral-share input.premier-firewood-referral-url {
	flex: 1 1 18em;
	min-width: 0;
	margin: 0;
	padding: 10px 14px !important;
	background: #fff;
	font-family: inherit;
}

.premier-firewood-referral-share .premier-firewood-referral-copy {
	flex: 0 0 auto;
	margin: 0;
	white-space: nowrap;
}

.premier-firewood-referral-share-code {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.6em;
	margin: 1em 0 0;
}

.premier-firewood-referral-share-code .premier-firewood-referral-share-label {
	display: inline;
	margin: 0;
}

.premier-firewood-referral-code {
	display: inline-block;
	padding: 0.2em 0.7em;
	background: #fff;
	border: 1px dashed var(--pfr-accent);
	border-radius: 4px;
	color: var(--pfr-accent);
	font-size: 1.15em;
	font-weight: 700;
	letter-spacing: 0.08em;
}

/* Share buttons */
.premier-firewood-referral-share-buttons {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5em;
	margin: 1.1em 0 0;
}

.premier-firewood-referral-share-buttons .premier-firewood-referral-share-label {
	display: inline;
	margin: 0 0.25em 0 0;
}

/* !important: themes often give buttons a fixed/min width and big padding. */
.premier-firewood-referral-share-buttons .button {
	flex: 0 0 auto !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0.5em 1em !important;
	font-size: 0.85em !important;
	line-height: 1.4 !important;
	text-align: center !important;
	white-space: nowrap !important;
}

/* Extra-specific copy so it beats the theme's ".woocommerce a.button" rule,
   which sets min-width: 200px, padding: 10px 20px and letter-spacing: 1.2px,
   all with !important. */
html body .woocommerce .premier-firewood-referral-share .premier-firewood-referral-share-buttons a.button.premier-firewood-referral-share-link,
html body .woocommerce .premier-firewood-referral-share .premier-firewood-referral-share-buttons button.button.premier-firewood-referral-native-share,
html body .premier-firewood-referral-dashboard .premier-firewood-referral-share .premier-firewood-referral-share-buttons a.button.premier-firewood-referral-share-link,
html body .premier-firewood-referral-dashboard .premier-firewood-referral-share .premier-firewood-referral-share-buttons button.button.premier-firewood-referral-native-share {
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	flex: 0 0 auto !important;
	padding: 8px 14px !important;
	font-size: 15px !important;
	line-height: 1.2 !important;
	letter-spacing: 0.5px !important;
	white-space: nowrap !important;
}

.premier-firewood-referral-share-buttons .button[hidden] {
	display: none !important;
}

.premier-firewood-referral-share-link.is-whatsapp {
	background: #25d366;
	border-color: #25d366;
	color: #fff;
}

.premier-firewood-referral-share-link.is-facebook {
	background: #1877f2;
	border-color: #1877f2;
	color: #fff;
}

.premier-firewood-referral-share-link.is-x {
	background: #000;
	border-color: #000;
	color: #fff;
}

/* Stat boxes */
.premier-firewood-referral-stats {
	list-style: none;
	margin: 1.5em 0 0.75em;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(10em, 1fr));
	gap: 0.75em;
}

/* No bullets: themes add them with list-style, ::before or ::marker. */
.premier-firewood-referral-stats,
.premier-firewood-referral-stats li {
	list-style: none !important;
	list-style-type: none !important;
	background-image: none !important;
}

.premier-firewood-referral-stats li::before,
.premier-firewood-referral-stats li::after {
	content: none !important;
	display: none !important;
}

.premier-firewood-referral-stats li::marker {
	content: none !important;
	font-size: 0 !important;
}

.premier-firewood-referral-stats li {
	margin: 0 !important;
	border: 1px solid var(--pfr-border);
	border-radius: var(--pfr-radius);
	background: #fff;
	padding: 1em 1.1em !important;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

.premier-firewood-referral-stats li.is-highlight {
	background: var(--pfr-accent);
	border-color: var(--pfr-accent);
	color: var(--pfr-accent-text);
}

/* Direct child only: wc_price() output also contains spans (currency symbol, amount). */
.premier-firewood-referral-stats li > span {
	display: block;
	margin-bottom: 0.3em;
	font-size: 0.8em;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	opacity: 0.75;
}

.premier-firewood-referral-stats li.is-highlight > span {
	opacity: 0.9;
}

.premier-firewood-referral-stats strong {
	display: block;
	font-size: 1.5em;
	line-height: 1.2;
	color: inherit;
}

.premier-firewood-referral-stats strong span {
	display: inline !important;
	color: inherit;
}

.premier-firewood-referral-note {
	margin: 0.4em 0;
	font-size: 0.9em;
	opacity: 0.8;
}

/* History tables */
.premier-firewood-referral-dashboard table.premier-firewood-referral-table {
	width: 100%;
	margin: 0 0 1em;
	border: 1px solid var(--pfr-border);
	border-collapse: separate;
	border-spacing: 0;
	border-radius: var(--pfr-radius);
	overflow: hidden;
	background: #fff;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

.premier-firewood-referral-dashboard table.premier-firewood-referral-table th,
.premier-firewood-referral-dashboard table.premier-firewood-referral-table td {
	padding: 0.85em 1.1em;
	border: 0;
	border-top: 1px solid var(--pfr-border);
	text-align: left;
	vertical-align: middle;
	background: transparent;
}

.premier-firewood-referral-dashboard table.premier-firewood-referral-table thead th {
	border-top: 0;
	background: var(--pfr-accent-soft);
	color: var(--pfr-accent);
	font-size: 0.78em;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.premier-firewood-referral-dashboard table.premier-firewood-referral-table tbody tr:hover td {
	background: rgba(0, 0, 0, 0.02);
}

/* Amount and balance columns read best right-aligned. */
.premier-firewood-referral-dashboard table.premier-firewood-referral-table th:last-child,
.premier-firewood-referral-dashboard table.premier-firewood-referral-table td:last-child,
.premier-firewood-referral-dashboard table.premier-firewood-referral-table .is-amount,
.premier-firewood-referral-dashboard table.premier-firewood-referral-table .is-credit,
.premier-firewood-referral-dashboard table.premier-firewood-referral-table .is-debit {
	text-align: right;
	white-space: nowrap;
}

/* WooCommerce stacks shop_table_responsive rows into cards on small screens. */
@media (max-width: 768px) {
	.premier-firewood-referral-dashboard table.premier-firewood-referral-table tbody tr td {
		border-top: 0;
		padding: 0.45em 1.1em;
		white-space: normal;
	}

	.premier-firewood-referral-dashboard table.premier-firewood-referral-table tbody tr td:first-child {
		padding-top: 0.9em;
	}

	.premier-firewood-referral-dashboard table.premier-firewood-referral-table tbody tr td:last-child {
		padding-bottom: 0.9em;
	}

	.premier-firewood-referral-dashboard table.premier-firewood-referral-table tbody tr + tr td:first-child {
		border-top: 1px solid var(--pfr-border);
	}

	.premier-firewood-referral-dashboard table.premier-firewood-referral-table tbody tr td::before {
		font-size: 0.8em;
		letter-spacing: 0.04em;
		text-transform: uppercase;
		opacity: 0.65;
	}
}

.premier-firewood-referral-desc {
	display: block;
	margin-top: 0.15em;
	font-size: 0.85em;
	opacity: 0.7;
}

.premier-firewood-referral-table .is-credit {
	color: var(--pfr-success);
	font-weight: 600;
}

.premier-firewood-referral-table .is-debit {
	color: var(--pfr-danger);
	font-weight: 600;
}

.premier-firewood-referral-status {
	display: inline-block;
	padding: 0.2em 0.65em;
	border-radius: 999px;
	font-size: 0.85em;
	font-weight: 600;
	line-height: 1.4;
	white-space: nowrap;
	background: #f0f0f1;
	color: #50575e;
}

.premier-firewood-referral-status.is-qualified {
	background: var(--pfr-success-soft);
	color: var(--pfr-success);
}

.premier-firewood-referral-status.is-pending {
	background: var(--pfr-warning-soft);
	color: var(--pfr-warning);
}

.premier-firewood-referral-status.is-reversed {
	background: var(--pfr-danger-soft);
	color: var(--pfr-danger);
}

.premier-firewood-referral-pager {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75em;
	margin: 0.75em 0 1.5em;
}

.premier-firewood-referral-pager-info {
	font-size: 0.9em;
	opacity: 0.75;
}

@media (max-width: 600px) {
	.premier-firewood-referral-share {
		padding: 1em;
	}

	.premier-firewood-referral-share .premier-firewood-referral-copy {
		flex-basis: 100%;
	}

	.premier-firewood-referral-share-buttons .button,
	html body .woocommerce .premier-firewood-referral-share .premier-firewood-referral-share-buttons a.button.premier-firewood-referral-share-link,
	html body .woocommerce .premier-firewood-referral-share .premier-firewood-referral-share-buttons button.button.premier-firewood-referral-native-share,
	html body .premier-firewood-referral-dashboard .premier-firewood-referral-share .premier-firewood-referral-share-buttons a.button.premier-firewood-referral-share-link,
	html body .premier-firewood-referral-dashboard .premier-firewood-referral-share .premier-firewood-referral-share-buttons button.button.premier-firewood-referral-native-share {
		flex: 1 1 40% !important;
	}

	.premier-firewood-referral-stats {
		grid-template-columns: 1fr 1fr;
	}
}

/* ---------- Order received (thank-you) page ---------- */

.premier-firewood-referral-order-summary {
	margin: 0 0 2em;
	padding: 1.1em 1.4em;
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-left: 4px solid var(--pfr-accent);
	border-radius: 8px;
	background: var(--pfr-accent-faint);
}

.premier-firewood-referral-order-summary p {
	margin: 0.35em 0;
}

.premier-firewood-referral-order-line {
	font-weight: 600;
}

.premier-firewood-referral-order-invite {
	margin-top: 0.75em;
}

.premier-firewood-referral-order-line + .premier-firewood-referral-order-invite {
	padding-top: 0.75em;
	border-top: 1px dashed rgba(0, 0, 0, 0.12);
}

/* ---------- Store conditions messages ---------- */

.premier-firewood-referral-conditions {
	margin: 1em 0;
	padding: 0.85em 1.1em;
	border: 1px dashed var(--pfr-accent-border);
	border-radius: 6px;
	background: var(--pfr-accent-faint);
	font-size: 0.92em;
}

.premier-firewood-referral-conditions h4 {
	margin: 0 0 0.4em;
	font-size: 0.85em;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	opacity: 0.8;
}

.premier-firewood-referral-conditions p {
	margin: 0.3em 0;
}

.premier-firewood-referral-box .premier-firewood-referral-conditions {
	margin: 0.6em 0;
	padding: 0.6em 0.85em;
}
