:is(.wp-site-blocks, .editor-styles-wrapper) :is(
  .is-style-surface,
  .is-style-soft,
  .is-style-outline,
  .is-style-accent,
  .is-style-card,
  .is-style-info,
  .is-style-success,
  .is-style-warning,
  .is-style-danger
) blockquote {
  margin: 0;
}

/* Surface */
:is(.wp-site-blocks, .editor-styles-wrapper) .is-style-surface:not(.wp-block-button),
:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-cover.is-style-surface .wp-block-cover__inner-container {
  background: var(--pl-bg-surface);
  border: 1px solid var(--pl-border-subtle);
  border-radius: var(--pl-radius-md);
  color: var(--pl-text-primary);
  padding: var(--pl-space-md);
}

:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-button.is-style-surface .wp-block-button__link {
  background: var(--pl-bg-surface);
  border: 1px solid var(--pl-border-subtle);
  border-radius: var(--pl-radius-md);
  color: var(--pl-text-primary);
}

/* Soft */
:is(.wp-site-blocks, .editor-styles-wrapper) .is-style-soft:not(.wp-block-button),
:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-cover.is-style-soft .wp-block-cover__inner-container {
  background: var(--pl-bg-muted);
  border: 1px solid var(--pl-border-subtle);
  border-radius: var(--pl-radius-md);
  color: var(--pl-text-primary);
  padding: var(--pl-space-md);
}

:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-button.is-style-soft .wp-block-button__link {
  background: var(--pl-bg-muted);
  border: 1px solid var(--pl-border-subtle);
  border-radius: var(--pl-radius-md);
  color: var(--pl-text-primary);
}

/* Outline */
:is(.wp-site-blocks, .editor-styles-wrapper) .is-style-outline:not(.wp-block-button),
:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-cover.is-style-outline .wp-block-cover__inner-container {
  background: transparent;
  border: 1px solid var(--pl-border-strong);
  border-radius: var(--pl-radius-md);
  color: var(--pl-text-primary);
  padding: var(--pl-space-md);
}

:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent;
  border: 1px solid var(--pl-border-strong);
  border-radius: var(--pl-radius-md);
  color: var(--pl-text-primary);
}

/* Accent */
:is(.wp-site-blocks, .editor-styles-wrapper) .is-style-accent:not(.wp-block-button),
:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-cover.is-style-accent .wp-block-cover__inner-container {
  background: var(--pl-accent-soft);
  border: 1px solid var(--pl-accent);
  border-left: 4px solid var(--pl-accent-strong);
  border-radius: var(--pl-radius-md);
  color: var(--pl-text-primary);
  padding: var(--pl-space-md);
}

:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-button.is-style-accent .wp-block-button__link {
  background: var(--pl-accent);
  border: 1px solid var(--pl-accent-strong);
  border-radius: var(--pl-radius-md);
  color: var(--pl-bg-canvas);
}

/* Card */
:is(.wp-site-blocks, .editor-styles-wrapper) .is-style-card:not(.wp-block-button),
:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-cover.is-style-card .wp-block-cover__inner-container {
  background: var(--pl-bg-surface);
  border: 1px solid var(--pl-border-subtle);
  border-radius: var(--pl-radius-lg);
  box-shadow: var(--pl-shadow-sm);
  color: var(--pl-text-primary);
  padding: var(--pl-space-lg);
}

:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-button.is-style-card .wp-block-button__link {
  background: var(--pl-bg-surface);
  border: 1px solid var(--pl-border-subtle);
  border-radius: var(--pl-radius-lg);
  box-shadow: var(--pl-shadow-sm);
  color: var(--pl-text-primary);
}

/* Semantic variants */
:is(.wp-site-blocks, .editor-styles-wrapper) .is-style-info:not(.wp-block-button),
:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-cover.is-style-info .wp-block-cover__inner-container {
  background: color-mix(in srgb, var(--pl-status-info) 14%, var(--pl-bg-canvas));
  border: 1px solid var(--pl-status-info);
  border-radius: var(--pl-radius-md);
  color: var(--pl-text-primary);
  padding: var(--pl-space-md);
}

:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-button.is-style-info .wp-block-button__link {
  background: var(--pl-status-info);
  border: 1px solid var(--pl-status-info);
  border-radius: var(--pl-radius-md);
  color: var(--pl-bg-canvas);
}

:is(.wp-site-blocks, .editor-styles-wrapper) .is-style-success:not(.wp-block-button),
:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-cover.is-style-success .wp-block-cover__inner-container {
  background: color-mix(in srgb, var(--pl-status-success) 14%, var(--pl-bg-canvas));
  border: 1px solid var(--pl-status-success);
  border-radius: var(--pl-radius-md);
  color: var(--pl-text-primary);
  padding: var(--pl-space-md);
}

:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-button.is-style-success .wp-block-button__link {
  background: var(--pl-status-success);
  border: 1px solid var(--pl-status-success);
  border-radius: var(--pl-radius-md);
  color: var(--pl-bg-canvas);
}

:is(.wp-site-blocks, .editor-styles-wrapper) .is-style-warning:not(.wp-block-button),
:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-cover.is-style-warning .wp-block-cover__inner-container {
  background: color-mix(in srgb, var(--pl-status-warning) 14%, var(--pl-bg-canvas));
  border: 1px solid var(--pl-status-warning);
  border-radius: var(--pl-radius-md);
  color: var(--pl-text-primary);
  padding: var(--pl-space-md);
}

:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-button.is-style-warning .wp-block-button__link {
  background: var(--pl-status-warning);
  border: 1px solid var(--pl-status-warning);
  border-radius: var(--pl-radius-md);
  color: var(--pl-bg-canvas);
}

:is(.wp-site-blocks, .editor-styles-wrapper) .is-style-danger:not(.wp-block-button),
:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-cover.is-style-danger .wp-block-cover__inner-container {
  background: color-mix(in srgb, var(--pl-status-danger) 14%, var(--pl-bg-canvas));
  border: 1px solid var(--pl-status-danger);
  border-radius: var(--pl-radius-md);
  color: var(--pl-text-primary);
  padding: var(--pl-space-md);
}

:is(.wp-site-blocks, .editor-styles-wrapper) .wp-block-button.is-style-danger .wp-block-button__link {
  background: var(--pl-status-danger);
  border: 1px solid var(--pl-status-danger);
  border-radius: var(--pl-radius-md);
  color: var(--pl-bg-canvas);
}

/* Focus parity for front/editor interactions. */
:is(.wp-site-blocks, .editor-styles-wrapper) :is(
  .wp-block-button.is-style-surface,
  .wp-block-button.is-style-soft,
  .wp-block-button.is-style-outline,
  .wp-block-button.is-style-accent,
  .wp-block-button.is-style-card,
  .wp-block-button.is-style-info,
  .wp-block-button.is-style-success,
  .wp-block-button.is-style-warning,
  .wp-block-button.is-style-danger
) .wp-block-button__link:focus-visible {
  outline: 2px solid var(--pl-focus-ring);
  outline-offset: 2px;
}
