.gc-button,
.gc-btn,
.wp-block-button__link,
.wp-element-button,
input[type="submit"],
button[type="submit"]:not(.gc-header-search button) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  min-height: 52px;
  padding: 0 20px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 10px;
  color: var(--gc-text);
  font-weight: 700;
  line-height: 1.1;
  text-align: center;
  box-shadow: 0 12px 30px rgba(0,0,0,.22), inset 0 1px rgba(255,255,255,.08);
  transition: transform .22s var(--gc-ease), border-color .22s ease, background .22s ease, box-shadow .22s ease;
  cursor: pointer;
}

.gc-button img { width: 38px; height: 38px; object-fit: contain; image-rendering: pixelated; }

.gc-button .dashicons,
.gc-btn .dashicons { width: 20px; height: 20px; font-size: 20px; }

.gc-button--primary,
.gc-btn:not(.gc-btn--ghost):not(.gc-btn--ember),
.wp-block-button__link,
.wp-element-button,
input[type="submit"] {
  border-color: #9af35b;
  background: linear-gradient(180deg, #8ee94b, #64bc2b);
  color: #071006;
  box-shadow: 0 14px 34px rgba(74, 156, 35, .24), inset 0 1px rgba(255,255,255,.34);
}

.gc-button--secondary,
.gc-btn--ghost {
  border-color: rgba(85, 215, 238, .54);
  background: rgba(4, 17, 22, .92);
  color: var(--gc-white);
}

.gc-btn--ember {
  border-color: rgba(242,183,45,.5);
  background: #2a2110;
  color: #ffe4a1;
}

.gc-button:hover,
.gc-btn:hover,
.wp-block-button__link:hover,
.wp-element-button:hover,
input[type="submit"]:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 40px rgba(0,0,0,.32), inset 0 1px rgba(255,255,255,.12);
}

.gc-button--primary:hover,
.gc-btn:not(.gc-btn--ghost):not(.gc-btn--ember):hover,
.wp-block-button__link:hover,
.wp-element-button:hover { background: linear-gradient(180deg, #9bf45a, #70c936); color: #050b04; }

.gc-button--secondary:hover,
.gc-btn--ghost:hover { border-color: var(--gc-cyan); background: #0a2024; }

.gc-button:active,
.gc-btn:active { transform: translateY(0); }