form {
  margin: 0 0 1em;
  padding: 0;
}

input,
textarea,
select {
  border: 1px solid #cccccc;
  font-family: Arial, Helvetica, sans-serif; /* Need to define font-family */
  font-size: 1em;
  margin: 0;
}

fieldset {
  background: transparent;
  border: 1px solid #ccc;
  margin: 10px 0;
  padding: 10px;
}

fieldset fieldset:last-child {
  margin-bottom: 0;
}

legend {
  font-weight: bold;
}

/* DRUPAL FORM ELEMENTS
--------------------------------------------------------------*/
.form-item,
.form-action {
  margin-bottom: 10px;
  margin-top: 10px;
}

.form-item input.form-text {
  overflow: visible;
}

form a,
form a:visited {
  color: #0088cc;
  text-decoration: none;
}

form a:hover {
  text-decoration: underline;
}

.form-item label {
  font-weight: normal;
  padding-bottom: 5px;
}

/* Text Inputs ---*/
.form-text:focus,
.form-checkbox:focus,
.form-radio:focus,
.form-select:focus {
  background: #ffffcc;
}

textarea:focus {
  background: #fff;
  border: 1px solid #fc0;
}

input.text,
input.title {
  font-size: 1.385em;
  padding: .5em;
}

input.form-text,
textarea {
  border: 1px solid #ccc;
  height: auto;
  padding: 2px;
}

input.form-text {
  background: url("images/grad-1.gif") repeat-x scroll 0 0 transparent;
  padding: 3px;
}

input.form-text:hover {
  background: #ffffcc;
}

textarea,
input {
  font: 1em normal Arial, Helvetica, sans-serif;
}

input.form-radio {
  border: none;
}

/* Buttons ---*/
input.form-submit,
a.button,
a.button:visited {
  background: url("images/grad-d1.gif") repeat-x scroll center top #0088cc;
  border-color: #0088cc;
  color: #fff;
  font-weight: bold;
  padding: 2px 10px;
}

input.form-submit:hover,
a.button:hover,
input.form-submit:focus,
a.button:focus {
}

span.button {
  margin-right: 5px;
}

span.button input.form-submit {
}

/* Checkbox ---*/
.form-type-checkbox label {
  font-weight: normal;
}

input.form-checkbox {
  border: none;
}

/* Radio ---*/
.form-type-radio label {
  font-weight: normal;
}

input.form-radio {
}

/* Selects ---*/
select,
.form-select {
}

/* Fieldsets ---*/
fieldset {
  background: transparent;
  border: 1px solid #dadada;
  margin: 10px 0;
  padding: 10px;
}

fieldset fieldset:last-child {
  margin-bottom: 0;
}

.form-type-radio .description,
.form-type-checkbox .description {
  margin-left: 0;
}

*:first-child+html fieldset {
  background-color: transparent;
  background-position: 0 10px;
  padding: 0 10px 10px;
}

*:first-child+html fieldset > .description,
*:first-child+html fieldset .fieldset-wrapper .description {
  padding-top: 10px;
}

legend.fieldset-legend {
}

fieldset legend {
  display: block;
  font-weight: 400;
  padding: 0 10px 0 0;
}

*:first-child+html fieldset legend,
*:first-child+html fieldset.collapsed legend {
  display: inline;
}

html.js fieldset.collapsed {
  background: transparent;
  padding-top: 5px;
}

/* SPECIFIC FORMS
--------------------------------------------------------------*/
.exposed-filters .form-item {
  margin-bottom: 10px;
  margin-top: 0;
}

.form-item textarea.error {
  padding: 2px;
}

.form-item .description,
fieldset .description,
.fieldset-layout-settings dd {
  color: #999999;
  font-size: .92em;
  padding-bottom: 0;
  padding-top: 5px;
}

span.form-required,
span.marker {
}

#article-admin-filter ul {
  padding: .5em 0;
}

#edit-operation-wrapper select {
  margin: .5em;
}

div.resizable-textarea textarea {
  margin-top: 0;
}

/* Fieldsets */
fieldset {
  background: transparent;
  border: 1px solid #dadada;
  margin: 10px 0;
  padding: 10px;
}

fieldset fieldset:last-child {
  margin-bottom: 0;
}

.form-type-radio .description,
.form-type-checkbox .description {
  margin-left: 0;
}

*:first-child+html fieldset {
  background-color: transparent;
  background-position: 0 10px;
  padding: 0 10px 10px;
}

*:first-child+html fieldset > .description,
*:first-child+html fieldset .fieldset-wrapper .description {
  padding-top: 10px;
}

fieldset legend {
  display: block;
  font-weight: 400;
  padding: 0 10px 0 0;
}

*:first-child+html fieldset legend,
*:first-child+html fieldset.collapsed legend {
  display: inline;
}

html.js fieldset.collapsed {
  background: transparent;
  padding-top: 5px;
}

/* Search */
/* Advanced search form */
fieldset#edit-advanced fieldset {
  float: left;
  margin: 0 10px 10px 0;
}

fieldset#edit-advanced fieldset .fieldset-legend {
  background: none;
  padding-left: 1em;
}

.advanced-search-submit {
  clear: both;
}

.search-advanced .criterion {
  float: none;
  margin: 0 5px;
}

#edit-keywords-fieldset .form-item:first-child {
  margin-top: 5px;
}

#search-form .container-inline {
  overflow: hidden;
}

#search-form {
  margin: 10px 0;
}

#search-form .form-item-keys {
  display: block;
  float: left;
  margin-top: 0;
}

#search-form .form-item-keys label {
  display: block;
  float: left;
  margin-right: 5px;
  padding-top: 4px;
}

#search-form .form-item-keys input.form-text {
  float: left;
  margin-right: 5px;
  padding: 3px 5px;
  width: 225px;
}

/* User login */
#user-login-form ul {
  margin: 0;
  padding: 0;
}

#user-login-form li.openid-link,
#user-login-form li.user-link {
}

#user-login ul {
  margin: 0 0 5px;
}

#user-login ul li {
  margin: 0;
}

#user-login-form .item-list li {
  list-style: none;
  margin: 0;
}

#block-user-login .block-content {
  padding: 0 16px;
}

#user-login-form li.openid-link,
#user-login li.openid-link {
  background: none;
  padding-left: 0;
}

#user-login-form .form-text {
  background: url(images/grad-1.gif) repeat-x;
  padding: 3px;
  width: 150px;
}

#user-login-form .form-text:focus,
#user-login-form .form-text:hover {
  background: #ffffcc;
}

#user-login-form label {
  font-weight: 600;
}

#user-login-form .openid-links {
  border-bottom: 1px solid #cdcdcd;
  margin-bottom: 5px;
  padding-bottom: 5px;
}

.hide-label label {
  background: none;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
}

#user-admin-filter ul li,
#article-admin-filter ul li {
  list-style: none;
}

.description {
  color: #555;
}

/* Tips overrides */
.field-type-text-long fieldset {
  padding: 10px 0;
}

.field-type-text-long fieldset .form-item {
  margin: 0;
  padding: 0 0 0 15px;
}

fieldset .filter-help {
  padding: 0 10px 5px 5px;
}

.filter-guidelines {
  font-size: .923em;
  margin: 0;
  padding: 5px 18px 10px;
}

/* Special case modules */
#devel-switch-user-form {
  margin-bottom: 0;
}

/* override poll.css */
.poll .vote-form,
.poll .vote-form .choices {
  margin: 0;
  text-align: left;
}
