/* ==========================================================================
   WordPress Block Style Overrides
   ========================================================================== */

.wp-block-group {
  padding: var(--qes-space-lg);
}

.wp-block-columns {
  gap: var(--qes-space-lg);
}

.wp-block-image img {
  border-radius: var(--qes-radius-md);
}

.wp-block-button__link {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  border-radius: var(--qes-radius-full);
  padding: 0.875rem 2rem;
  transition: all var(--qes-transition);
}

.wp-block-button__link:hover {
  transform: translateY(-2px);
  box-shadow: var(--qes-shadow-md);
}

.is-style-outline .wp-block-button__link {
  border-width: 2px;
}

.wp-block-separator {
  border-color: var(--qes-border);
}

.wp-block-separator.has-css-opacity {
  opacity: 1;
}

.wp-block-quote {
  border-left-color: var(--qes-accent);
  border-left-width: 4px;
  padding-left: var(--qes-space-lg);
  font-style: normal;
}

.wp-block-quote cite {
  color: var(--qes-text-muted);
  font-size: 0.9rem;
}

.wp-block-table table {
  border-collapse: collapse;
  width: 100%;
}

.wp-block-table td,
.wp-block-table th {
  border: 1px solid var(--qes-border);
  padding: var(--qes-space-sm) var(--qes-space-md);
}

.wp-block-table th {
  background: var(--qes-primary);
  color: #ffffff;
  font-weight: 700;
}

.wp-block-table tr:nth-child(even) td {
  background: rgba(0, 0, 0, 0.02);
}

.wp-block-cover {
  border-radius: var(--qes-radius-lg);
  overflow: hidden;
}

.entry-content > *:not(.alignwide):not(.alignfull) {
  max-width: 800px;
  margin-inline: auto;
}

.entry-content > .alignwide {
  max-width: 1200px;
  margin-inline: auto;
}

.entry-content > .alignfull {
  max-width: none;
  margin-inline: calc(-50vw + 50%);
  width: 100vw;
}
