.siag-btn {
  align-items: center;
  border: 1px solid transparent;
  border-radius: var(--siag-radius-sm);
  cursor: pointer;
  display: inline-flex;
  font-family: var(--siag-font);
  font-size: 14px;
  font-weight: 600;
  gap: 8px;
  justify-content: center;
  line-height: 1.2;
  min-height: 44px;
  padding: 11px 18px;
  text-decoration: none;
  transition: background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.siag-btn:hover {
  text-decoration: none;
  transform: translateY(-1px);
}

.siag-btn:disabled,
.siag-btn.is-loading {
  cursor: not-allowed;
  opacity: 0.72;
  transform: none;
}

.siag-btn-primary {
  background: var(--siag-green);
  box-shadow: 0 10px 24px rgba(0, 126, 71, 0.24);
  color: var(--siag-white);
}

.siag-btn-primary:hover,
.siag-btn-primary:focus {
  background: var(--siag-green-dark, #005c3b);
  color: var(--siag-white);
}

.siag-btn-secondary {
  background: rgba(41, 61, 112, 0.08);
  border-color: rgba(41, 61, 112, 0.18);
  color: var(--siag-blue);
}

.siag-btn-secondary:hover,
.siag-btn-secondary:focus {
  background: rgba(41, 61, 112, 0.13);
  color: var(--siag-blue);
}

.siag-btn-outline-green {
  background: rgba(0, 126, 71, 0.06);
  border-color: rgba(0, 126, 71, 0.18);
  color: var(--siag-green);
}

.siag-btn-outline-green:hover,
.siag-btn-outline-green:focus {
  background: rgba(0, 126, 71, 0.10);
  border-color: rgba(0, 126, 71, 0.30);
  color: var(--siag-green);
}

.siag-btn-outline-green:focus-visible {
  outline: 2px solid var(--siag-green);
  outline-offset: 2px;
}

.siag-btn-danger {
  background: #fff5f5;
  border-color: rgba(180, 35, 24, 0.25);
  color: var(--siag-danger);
}

.siag-btn-danger:hover,
.siag-btn-danger:focus {
  background: #ffe3e0;
  color: var(--siag-danger);
}

.siag-btn-ghost {
  background: transparent;
  color: var(--siag-muted);
}

.siag-btn-ghost:hover,
.siag-btn-ghost:focus {
  background: rgba(0, 126, 71, 0.07);
  color: var(--siag-forest);
}

.siag-btn-loader {
  animation: siag-spin 0.8s linear infinite;
  border: 2px solid rgba(255, 255, 255, 0.45);
  border-radius: 999px;
  border-top-color: var(--siag-white);
  display: none;
  height: 16px;
  width: 16px;
}

.siag-btn.is-loading .siag-btn-loader {
  display: inline-block;
}

@keyframes siag-spin {
  to { transform: rotate(360deg); }
}

/* Compact icon-only action; preserves the outlined SIAG button states. */
.siag-btn.siag-icon-button {
 display:inline-flex!important; align-items:center; justify-content:center;
 box-sizing:border-box; width:44px!important; min-width:44px; height:44px!important;
 padding:0!important; border:1px solid rgba(0,126,71,.30)!important;
 border-radius:var(--siag-radius-sm,8px)!important;
 background:rgba(0,126,71,.06)!important; color:var(--siag-green)!important;
 position:static!important; float:none!important; transform:none!important;
 vertical-align:middle;
}
.siag-btn.siag-icon-button:hover,
.siag-btn.siag-icon-button:focus-visible {
 background:rgba(0,126,71,.10)!important; border-color:var(--siag-green)!important;
}
.siag-btn.siag-icon-button > i {
 color:inherit!important; font-size:18px!important; transform:none!important;
 margin:0!important; position:static!important;
}
.siag-btn.siag-icon-button[hidden],
.siag-btn.siag-icon-button[style*="display: none"],
.siag-btn.siag-icon-button[style*="display:none"] { display:none!important; }
