.btn {
  border: none;
  padding: 7px 14px;
  border-radius: var(--radius-sm);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.15s;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  line-height: 1.4;
}

.btn:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.btn-primary {
  background: var(--accent);
  color: #fff;
}

.btn-primary:hover:not(:disabled) { background: var(--accent-hover); }

.btn-success {
  background: var(--success);
  color: #fff;
}

.btn-success:hover:not(:disabled) { background: #4E9A4B; }

.btn-warning {
  background: var(--warning);
  color: #fff;
}

.btn-warning:hover:not(:disabled) { background: #C49239; }

.btn-danger {
  background: var(--error);
  color: #fff;
}

.btn-danger:hover:not(:disabled) { background: #C05740; }

.btn-ghost {
  background: transparent;
  color: var(--text);
  border: 1px solid var(--border);
}

.btn-ghost:hover:not(:disabled) { background: var(--hover); border-color: var(--muted); }

.btn-github {
  background: #24292f;
  color: #fff;
}

.btn-github:hover:not(:disabled) { background: #1b1f23; }

.btn-github.landing-cta {
  background: #24292f;
  color: #fff;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 28px 10px 22px;
}

.btn-github.landing-cta:hover {
  background: #1b1f23;
  color: #fff;
}

.btn-sm {
  padding: 5px 10px;
  font-size: 12px;
}

/* Badges */
.badge {
  display: inline-block;
  font-size: 11px;
  padding: 2px 8px;
  border-radius: 10px;
  font-weight: 600;
  line-height: 1.4;
}

.badge-version {
  background: var(--accent-light);
  color: var(--accent);
}

.badge-tokens {
  color: var(--muted);
}

.badge-agent {
  background: var(--success-light);
  color: var(--success);
}

.badge-user {
  background: var(--warning-light);
  color: var(--warning);
}

/* Status badges */
.status-badge {
  font-size: 11px;
  padding: 3px 10px;
  border-radius: 10px;
  font-weight: 600;
  white-space: nowrap;
  letter-spacing: 0.01em;
}

.status-idle { background: rgba(138, 133, 125, 0.12); color: var(--muted); }
.status-running { background: var(--accent-light); color: var(--accent); }
.status-paused { background: var(--warning-light); color: var(--warning); }
.status-awaiting_approval { background: var(--warning-light); color: var(--warning); }
.status-complete { background: var(--success-light); color: var(--success); }
.status-failed { background: var(--error-light); color: var(--error); }

/* Cost badge */
.cost-badge {
  font-size: 11px;
  padding: 3px 10px;
  border-radius: 10px;
  font-weight: 600;
  white-space: nowrap;
  background: var(--accent-light);
  color: var(--accent);
}
.cost-badge:empty { display: none; }
