/* ────────────────────────────────────────────────────────────
   02-buttons.css — core/button: base, variants, and states
   Variant switching via the sidebar "Styles" panel:
     - (none)     → primary orange (default)
     - outline    → orange outline (WP built-in)
     - primary    → orange fill
     - secondary  → blue fill
     - tertiary   → white on dark
     - no-style   → text-link

   Load order: after 00-tokens.css, before 03-composite CSS.
   ──────────────────────────────────────────────────────────── */

/* ── Shared base (all variants inherit) ───────────────────── */
.wp-block-button .wp-block-button__link,
.wp-block-button a.wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: var(--spacing-xs) var(--spacing-xl);
	font-family: var(--font-primary);
	font-size: var(--text-body-base);
	font-weight: var(--font-weight-medium);
	line-height: var(--line-height-snug);
	background-color: var(--color-orange-primary);
	color: var(--color-white);
	border: 0;
	border-radius: 0;
	text-decoration: none;
	cursor: pointer;
	transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out, border-color 0.2s ease-in-out;
}

.wp-block-button .wp-block-button__link:hover,
.wp-block-button a.wp-block-button__link:hover {
	background-color: #B74A1E;
	color: var(--color-white);
}

.wp-block-button .wp-block-button__link:active,
.wp-block-button a.wp-block-button__link:active {
	background-color: #9A3F19;
}

.wp-block-button .wp-block-button__link:focus-visible,
.wp-block-button a.wp-block-button__link:focus-visible {
	outline: 2px solid var(--color-blue-primary);
	outline-offset: 2px;
}

/* ── Disabled (all buttons) ─────────────────────────────────── */

.wp-block-button .wp-block-button__link[aria-disabled="true"],
.wp-block-button .wp-block-button__link:disabled {
	opacity: 0.5;
	cursor: not-allowed;
	pointer-events: none;
}

/* ── Outline (WP built-in variant) ─────────────────────────── */

.wp-block-button.is-style-outline .wp-block-button__link,
.wp-block-button.is-style-outline a.wp-block-button__link {
	background-color: transparent;
	color: var(--color-orange-primary);
	border: 2px solid var(--color-orange-primary);
}

.wp-block-button.is-style-outline .wp-block-button__link:hover,
.wp-block-button.is-style-outline a.wp-block-button__link:hover {
	background-color: var(--color-orange-primary);
	color: var(--color-white);
}

.wp-block-button.is-style-outline .wp-block-button__link:active,
.wp-block-button.is-style-outline a.wp-block-button__link:active {
	background-color: #B74A1E;
	border-color: #B74A1E;
	color: var(--color-white);
}

.wp-block-button.is-style-outline .wp-block-button__link:focus-visible,
.wp-block-button.is-style-outline a.wp-block-button__link:focus-visible {
	outline: 2px solid var(--color-blue-primary);
	outline-offset: 2px;
}

/* ── Primary (orange fill) ──────────────────────────────────── */

.wp-block-button.is-style-primary .wp-block-button__link,
.wp-block-button.is-style-primary a.wp-block-button__link {
	background-color: var(--color-orange-primary);
	color: var(--color-white);
	border: 0;
}

.wp-block-button.is-style-primary .wp-block-button__link:hover {
	background-color: #B74A1E;
	color: var(--color-white);
}

.wp-block-button.is-style-primary .wp-block-button__link:active {
	background-color: #9A3F19;
}

.wp-block-button.is-style-primary .wp-block-button__link:focus-visible {
	outline: 2px solid var(--color-blue-primary);
	outline-offset: 2px;
}

/* ── Secondary (blue fill) ──────────────────────────────────── */

.wp-block-button.is-style-secondary .wp-block-button__link,
.wp-block-button.is-style-secondary a.wp-block-button__link {
	background-color: var(--color-blue-primary);
	color: var(--color-white);
	border: 0;
}

.wp-block-button.is-style-secondary .wp-block-button__link:hover {
	background-color: #007FA8;
	color: var(--color-white);
}

.wp-block-button.is-style-secondary .wp-block-button__link:active {
	background-color: #006687;
}

.wp-block-button.is-style-secondary .wp-block-button__link:focus-visible {
	outline: 2px solid var(--color-blue-dark);
	outline-offset: 2px;
}

/* ── Tertiary (white on dark) ───────────────────────────────── */

.wp-block-button.is-style-tertiary .wp-block-button__link,
.wp-block-button.is-style-tertiary a.wp-block-button__link {
	background-color: var(--color-white);
	color: var(--color-blue-primary);
	border: 0;
}

.wp-block-button.is-style-tertiary .wp-block-button__link:hover {
	background-color: rgba(255, 255, 255, 0.85);
	color: var(--color-blue-primary);
}

.wp-block-button.is-style-tertiary .wp-block-button__link:active {
	background-color: rgba(255, 255, 255, 0.70);
}

.wp-block-button.is-style-tertiary .wp-block-button__link:focus-visible {
	outline: 2px solid var(--color-white);
	outline-offset: 2px;
}

/* ── No-Style (text-link appearance) ───────────────────────── */

.wp-block-button.is-style-no-style .wp-block-button__link,
.wp-block-button.is-style-no-style a.wp-block-button__link {
	display: inline;
	min-height: 0;
	background: transparent;
	color: var(--color-orange-primary);
	border: 0;
	padding: 0;
	text-decoration: none;
}

.wp-block-button.is-style-no-style .wp-block-button__link::after,
.wp-block-button.is-style-no-style a.wp-block-button__link::after {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-left: 0.2em;
	vertical-align: middle;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'><path d='M8.88888 3.3335L13.3333 8.00016M13.3333 8.00016L8.88888 12.6668M13.3333 8.00016L2.66666 8.00016' stroke='%23E55D25' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
	background-repeat: no-repeat;
	background-position: center;
	transition: transform 0.2s ease-in-out;
}

.wp-block-button.is-style-no-style .wp-block-button__link:hover,
.wp-block-button.is-style-no-stylea.wp-block-button__link:not(.has-background):hover {
	color: #9A3F19;
	background-color: transparent !important;
}

.wp-block-button.is-style-no-style .wp-block-button__link:hover::after,
.wp-block-button.is-style-no-style a.wp-block-button__link:hover::after {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'><path d='M8.88888 3.3335L13.3333 8.00016M13.3333 8.00016L8.88888 12.6668M13.3333 8.00016L2.66666 8.00016' stroke='%23B74A1E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
	transform: translateX(2px);
}

.wp-block-button.is-style-no-style .wp-block-button__link:active {
	color: #9A3F19;
}

.wp-block-button.is-style-no-style .wp-block-button__link:focus-visible {
	outline: 2px solid var(--color-orange-primary);
	outline-offset: 2px;
}
