/* GENERATED from design-tokens.json styles.buttons — do not edit by hand. */

/* The React reference runs Tailwind preflight (border-box everywhere); WP does
   not, so padded flex/grid children compute different widths. Match it. */
[class*="qb-pattern-"],
[class*="qb-pattern-"] *,
[class*="qb-pattern-"] *::before,
[class*="qb-pattern-"] *::after {
  box-sizing: border-box;
}

/* Assembled pages: WP's block-gap injects 24px between root-level blocks
   (site header and footer, main wrapper, and each section) — the React site stacks
   sections flush. !important because these fight theme layout rules whose
   cascade position varies. */
.wp-site-blocks > * ,
[class*="qb-pattern-"] {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}

.wp-block-button__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  border: 0;
  border-radius: 0px;
  padding: 0.75rem 1.5rem 0.75rem 1.5rem;
  font-size: 0.813rem;
  font-weight: 500;
  text-decoration: none;
}
.is-style-outline .wp-block-button__link {
  border: 1px solid #1A1A2E;
}

/* NOTE — recurring WP defaults (inner block-gap margins, has-background
   paragraph padding, cover's 1em padding and forced white text) are deliberately
   NOT neutralised here. Hoisting them was measured against the full suite and
   regressed six already-passing patterns: the existing pattern CSS was authored
   *against* these defaults, so removing them changes spacing the patterns rely on.
   New conversions should zero them per pattern (see the runbook), and a
   from-scratch site can adopt a stricter baseline before any pattern is written. */
