/* Botones — variantes primaria / outline / dark.
   Aplican en .ijsb-btn-* (HTML manual) y en .is-style-ijsb-* del block button. */

.ijsb-btn,
.wp-block-button.is-style-ijsb-primary > .wp-block-button__link,
.wp-block-button.is-style-ijsb-outline > .wp-block-button__link,
.wp-block-button.is-style-ijsb-dark    > .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	gap: 0.5em;
	font-family: var(--ijs-font-body);
	font-weight: 600;
	font-size: 1rem;
	line-height: 1.2;
	padding: 0.875em 1.625em;
	border-radius: 999px;
	border: 1.5px solid transparent;
	text-decoration: none;
	cursor: pointer;
	transition: background 0.18s ease, color 0.18s ease, border-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
	-webkit-appearance: none;
	appearance: none;
}

/* Primary — coral relleno. Coral-700 (AA white 4.84:1) en lugar de coral-600
   (2.79:1) para cumplir contraste WCAG AA en CTAs primary de toda la web. */
.ijsb-btn--primary,
.wp-block-button.is-style-ijsb-primary > .wp-block-button__link {
	background: var(--ijs-coral-700);
	color: var(--ijs-white);
	border-color: var(--ijs-coral-700);
	box-shadow: var(--ijs-shadow-md);
}
.ijsb-btn--primary:hover,
.ijsb-btn--primary:focus-visible,
.wp-block-button.is-style-ijsb-primary > .wp-block-button__link:hover,
.wp-block-button.is-style-ijsb-primary > .wp-block-button__link:focus-visible {
	background: var(--ijs-coral-800);
	border-color: var(--ijs-coral-800);
	transform: translateY(-1px);
	box-shadow: var(--ijs-shadow-lg);
	color: var(--ijs-white);
}

/* Outline — borde navy / fondo transparente */
.ijsb-btn--outline,
.wp-block-button.is-style-ijsb-outline > .wp-block-button__link {
	background: transparent;
	color: var(--ijs-navy-900);
	border-color: var(--ijs-navy-900);
}
.ijsb-btn--outline:hover,
.ijsb-btn--outline:focus-visible,
.wp-block-button.is-style-ijsb-outline > .wp-block-button__link:hover,
.wp-block-button.is-style-ijsb-outline > .wp-block-button__link:focus-visible {
	background: var(--ijs-navy-900);
	color: var(--ijs-white);
}

/* Outline sobre fondo navy — variante dark */
.ijsb-section--dark .ijsb-btn--outline,
.has-background.is-style-ijsb-section-navy .wp-block-button.is-style-ijsb-outline > .wp-block-button__link {
	color: var(--ijs-white);
	border-color: var(--ijs-white);
}
.ijsb-section--dark .ijsb-btn--outline:hover,
.has-background.is-style-ijsb-section-navy .wp-block-button.is-style-ijsb-outline > .wp-block-button__link:hover {
	background: var(--ijs-white);
	color: var(--ijs-navy-900);
}

/* Dark — navy relleno */
.ijsb-btn--dark,
.wp-block-button.is-style-ijsb-dark > .wp-block-button__link {
	background: var(--ijs-navy-900);
	color: var(--ijs-white);
	border-color: var(--ijs-navy-900);
}
.ijsb-btn--dark:hover,
.ijsb-btn--dark:focus-visible,
.wp-block-button.is-style-ijsb-dark > .wp-block-button__link:hover,
.wp-block-button.is-style-ijsb-dark > .wp-block-button__link:focus-visible {
	background: var(--ijs-navy-600);
	border-color: var(--ijs-navy-600);
	color: var(--ijs-white);
}

/* Disabled */
.ijsb-btn[disabled],
.ijsb-btn[aria-disabled="true"] {
	opacity: 0.5;
	cursor: not-allowed;
	transform: none;
}
