 
 (defun skewer-css-beginning-of-rule ()
   "Move to the beginning of the current rule and return point."
-  (if (eql (char-before) ?})
-      (backward-char))
-  (re-search-forward "}")
+  (skewer-css-end-of-rule)
   (let ((end (re-search-backward "{")))
     (when (re-search-backward "[}/]" nil 'start)
       (forward-char))

(defun skewer-css-declaration ()
  "Return the current declaration as a pair of strings."
  (save-excursion
    (if (eql (char-before) ?\;)
        (backward-char 1))
    (let ((end (1- (re-search-forward ";"))))
      (re-search-backward ":")
      (css-backward-sexp 1)
      (let* ((clip (buffer-substring-no-properties (point) end))
             (pair (split-string clip ":")))
        (mapcar #'skewer-css-trim pair)))))



(defun skewer-css-end-of-rule ()
  "Move to the end of the current rule and return point."
  (if (eql (char-before) ?})
      (point)
    (re-search-forward "}")))

(defun skewer-css-end-of-declaration ()
  "Move to the end of the current declaration and return point."
  (if (eql (char-before) ?\;)
      (point)
    (re-search-forward ";")))

(defun skewer-css-beginning-of-declaration ()
  "Move to the end of the current declaration and return point."
  (skewer-css-end-of-declaration)
  (re-search-backward ":")
  (css-backward-sexp 1)
  (point))

(defun skewer-css-selectors ()
  "Return the selectors for the current rule."
