p:last-child { margin:0px; }

hr { display:none; }

/**
 * Toggleables ========================================================
 */
.toggleable { display:none; }

/**
 * Generic ============================================================
 */
.page-content dl dt {}
.page-content dl dd,
.page-content dl dl {
  margin-left:20px;
  margin-bottom:10px;
  }

/**
 * Console ============================================================
 */
div.messages {
  padding:15px;
  color:#036;
  background:#f8f8f8;
  border:5px solid #fff;
  }

table tr.warning th,
div.warning {
  color:#a84;
  background:#fff4c0;
  }

table tr.error th,
div.error {
  color:#965;
  background:#ffe4e0;
  }

table tr.ok th,
table tr.info th,
div.status {
  color:#687;
  background:#ecf8f4;
  }

  div.error   { border-color:#fff8f4; }
  div.warning { border-color:#fffce4; }
  div.status  { border-color:#f8fffc; }

/**
 * Pagers =============================================================
 */
div.pager {
  font-weight:normal;
  font-size:11px;
  }

  div.pager ul.pager-list { float:left; }
  div.pager ul.pager-links { float:right; }

/**
 * Menus, lists =======================================================
 */
div.help-items ul li,
form.confirmation ul li,
.item-list ul li,
.prose .item-list li,
ul.menu li {
  float:none;
  display:block;
  padding:5px 10px 4px;
  border-bottom:1px solid #f4f4f4;
  }

  div.help-items ul li:last-child,
  form.confirmation ul li:last-child,
  .item-list ul li:last-child,
  .prose .item-list li:last-child,
  ul.menu li:last-child {
    border-bottom:0px;
    padding-bottom:5px;
    }

ul.admin-list li a span.icon {
  position:absolute;
  left:10px;
  top:10px;
  }

  ul.admin-list-compact li a span.icon { top:5px; }

ul.node-type-list li,
ul.admin-list li {
  position:relative;
  padding:10px 5px 9px 50px;
  margin:0px;
  border-bottom:1px solid #e8e8e8;
  }

  ul.node-type-list li:last-child,
  ul.admin-list li:last-child {
    padding-bottom:10px;
    border:0px;
    }

  ul.node-type-list label { font-size:15px; }

/**
 * Tables =============================================================
 */
table {
  width:100%;
  font-size:11px;
  line-height:15px;
  margin:0px 0px 10px;
  background-color:#fff;

  border-collapse:collapse;
  border-color:#ccc #ddd #eee;
  border-width:1px;
  border-style:solid;
  }

table td,
table th {
  vertical-align:top;
  border-width:1px 0px;
  border-style:solid;
  border-color:#ddd;
  padding:5px;
  }

table th {
  text-align:left;
  font-weight:normal;
  color:#666;
  background:#eee;
  }

  table thead th { border-top-color:#ccc; }

table td.active { background:#e4f0f8; }
table tr.odd td.active { background:#ecf8fc; }

table tr.selected td.active,
table tr.selected td {
  background:#ffc;
  border-color:#eeb;
  }

.fieldset table { margin:0px; }

table td.module { font-weight:bold; }
table td.permission { padding-left:19px; }

/**
 * Forms ==============================================================
 */
.block,
.item-list,
.help-items ul,
.fieldset,
.form-item,
form.confirmation ul,
.admin-list,
.node-type-list,
.admin-panel {
  background:#fff;
  margin:0px 0px 10px;

  border-width:1px;
  border-style:solid;
  border-color:#ccc #ddd #eee;
  }

  .form-item {
    position:relative;
    padding:9px;
    }

  .admin-list { margin:0px; }

.block .item-list,
.block .form-item,
.admin-panel .admin-list,
.teaser-checkbox .form-item,
.form-item .form-item,
.fieldset .form-item,
table div.form-item {
  background:transparent;
  padding:5px;
  margin:0px;
  border:0px;
  }

  .block .item-list,
  .admin-panel .admin-list { padding:0px; }

.form-item label {
  margin:0px;
  padding:0px;
  color:#999;
  font-weight:bold;
  font-size:10px;
  text-transform:uppercase;
  }

  .form-item label.option {
    text-transform:none;
    font-size:11px;
    }

  .form-item label.option input { vertical-align:middle; }

.page-content .password-description,
.page-content .password-strength,
.page-content div.description,
.page-content .form-item div.description {
  line-height:15px;
  font-size:11px;
  white-space:normal;
  }

  .admin-panel p.description {
    background:#eee;
    border-top:1px solid #ddd;
    border-bottom:1px solid #fff;
    line-height:20px;
    font-size:11px;
    padding:4px 9px;
    margin:0px;
    }

.fieldset div.description { margin:0px 0px 10px; }

.page-content .form-item div.description {
  position:absolute;
  max-width:60%;
  right:0px;
  top:100%;
  z-index:5;

  color:#687;
  background:#e8f4f0;
  border:5px solid #f0f8f4;
  border-top:0px;

  margin:0px;
  padding:10px;
  display:none;
  }

  .page-content div.form-item:hover,
  .page-content .fieldset div.form-item:hover { background-color:#f0f8f4; }

  .page-content div.form-item:hover { z-index:1; }
  .page-content div.form-item:hover > div.description { display:block; }

input.teaser-button,
input.form-submit {
  cursor:pointer;
  padding:2px 10px;
  color:#333;

  text-align:center;

  font-weight:normal;
  border-width:1px;
  border-style:solid;
  border-color:#ddd #ddd #ccc;
  background:#f4f4f4 url(images/bleeds.png) 0px -41px repeat-x;
  }

  input.form-submit:hover {
    border-color:#999 #999 #888;
    background:#888 url(images/bleeds.png) 0px 0px repeat-x;
    color:#fff;
    }

  input.form-submit:active {
    background:#666;
    color:#fff;
    }

  /* Teaser splitter */
  div.teaser-button-wrapper {
    position:relative;
    z-index:2;
    padding:5px 5px 0px;
    }

  input.teaser-button { font-size:11px; }
  form input#edit-delete { color:#ccc; }

input.form-autocomplete,
input.form-text,
textarea.form-textarea,
select.form-select {
  padding:2px;
  border-width:2px;
  border-style:solid;
  border-color:#e8e8e8 #f0f0f0 #f8f8f8;
  background:#fff;
  color:#666;
  max-width:100%;
  }

  input.form-autocomplete:hover,
  input.form-text:hover,
  textarea.form-textarea:hover,
  select.form-select:hover,
  input.form-autocomplete:focus,
  input.form-text:focus,
  textarea.form-textarea:focus,
  select.form-select:focus {
    color:#333;
    border-color:#ace;
    }

  input.fluid {
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
    width:100%;
    }

  html.js input.form-autocomplete { background-position:100% 7px; }
  html.js input.throbbing { background-position:100% -13px; }

  /* Exceptions */
  #diff-inline-form select,
  #content div.filter-options select { padding:0px; }

/* Fieldsets */
.fieldset,
.fieldset-title,
.fieldset-title a,
.fieldset-content { display:block; }

.item-list h3,
.block .block-title,
.admin-panel h3,
.fieldset-title,
.collapsible .fieldset-title a {
  display:block;
  font-size:11px;
  margin:0px;
  padding:4px 9px 5px;
  color:#333;
  background:#f4f4f4;
  }

  /* Explicit height for IE */
  .collapsible .fieldset-title a { height:20px; }

  .admin-panel h3 { background:#eee; }

  .collapsible .fieldset-title { position:relative; }

  .collapsible .fieldset-title span.icon {
    position:absolute;
    left:-20px;
    top:4px;
    background:url(images/sprite.png) 0px -20px no-repeat;
    width:20px;
    height:20px;
    display:block;
    }

    html.js .collapsed .fieldset-title span.icon { background-position:0px 0px; }

    .fieldset .collapsible .fieldset-title span.icon { display:none; }

  .collapsed .fieldset-title a {
    background:#eee;
    color:#999;
    }

  .collapsed .fieldset-title a:hover { color:#666; }

  .collapsible .fieldset-title {
    padding:0px;
    background:transparent;
    }

  .collapsed .fieldset-title a { padding-bottom:4px; }

.block .block-content,
.fieldset-content {
  padding:10px 9px 9px;
  background:#fff;
  }

  html.js .collapsed .fieldset-content { display:none; }

  .fieldset .fieldset .fieldset-content { background:#fff; }

/**
 * Form layout: Default ===============================================
 */
div.form-layout-default { background:url(images/vrule.png) 65% 0% repeat-y; }

div.column-main {
  float:left;
  width:65%;
  }

  div.column-main div.column-wrapper { padding-right:10px; }

div.column-side {
  float:right;
  width:34.99%;
  }

  div.column-side div.column-wrapper { padding-left:10px; }

form div.buttons {
  background:#eee;
  border:1px solid #ddd;
  padding:9px;
  }

  div.form-layout-default div.column-main div.buttons { display:none; }
  div.form-layout-default div.column-side div.buttons { margin:0px 0px 10px; }
  div.form-layout-default div.column-side div.buttons input.form-submit { margin:1px 0px; }

/**
 * "Boxes" aka generic wrappers =======================================
 */
.box-title {
  font-weight:normal;
  font-size:10px;
  text-transform:uppercase;

  background:#eee;
  border:1px solid #ddd;
  padding:4px 9px;
  margin:0px 0px 10px;
  }

/**
 * System =============================================================
 */
div.admin .right {
  padding-left:5px;
  float:right;
  }

div.admin .left {
  padding-right:5px;
  float:left;
  }

div.admin .right,
div.admin .left {
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  width:50%;
  margin:0px;
  }

/* admin/content/node & admin/user/user */
#content dl.multiselect,
#content dl.multiselect dt,
#content dl.multiselect dd { margin:0px 10px 0px 0px; }

#content dl.multiselect select {
  font-size:11px;
  background:#fff;
  border-style:solid;
  border-width:2px;
  border-color:#e8e8e8 #f0f0f0 #f8f8f8;
  }

/* update options */
div.admin-options {
  background:#f8f8f8;
  line-height:30px;
  height:30px;
  padding:9px;
  border:1px solid #ddd;
  margin:0px 0px 10px;
  }

div.admin-options label,
div.admin-options div.form-item {
  margin-right:10px;
  float:left;
  }

div.admin-options div.form-item {
  padding:0px;
  border:0px;
  }

/* dependency colors */
div.admin-dependencies,
div.admin-required { color: #666; }
span.admin-disabled { color: #900; }
span.admin-enabled { color: #099; }
span.admin-missing { color: #c30; }

/**
 * Help pages =========================================================
 */
div.help-items { float:left; width:25%; }
div.help-items ul { margin:10px 5px; }

/**
 * Admin toolbar ======================================================
 */
body.rubik div#admin-toolbar span.menu-description { padding-left:50px; }

body.rubik div#admin-toolbar span.menu-description span.icon {
  position:absolute;
  left:10px;
  top:0px;
  }

/**
 * Form description exceptions ========================================
 */

/**
 * Some form elements are either too weirdly positioned or really benefit
 * from persistent descriptions. Reset for all of these.
 */
.page-content .form-item .widget-edit .description,
#upload-attachments .description,
#views-ajax-pad .form-item,
#views-ajax-pad .form-item .description {
  background:transparent;
  border:0px;
  position:static;
  display:block;
  }

#upload-attachments .description,
#views-ajax-pad .form-item .description {
  padding:0px;
  color:#666;
  display:block;
  max-width:none;
  }

/**
 * Form containers ====================================================
 */
.container-inline h2,
.container-inline div {
  display:inline;
  border:0px;
  padding:0px;
  background:transparent;
  }

.container-inline { margin:0px 0px 10px; }

/**
 * ORPHANED MARKUP ====================================================
 * The following selectors target markup generated by Drupal that have
 * exactly 1 or extremely few instances. It will make a great future
 * hitlist of markup to consolidate and generalize.
 */
div.compact-link {
  font-size:11px;
  margin:0px 0px 10px;
  }

div.compact-link a {
  border:1px solid #ddd;
  padding:4px 9px;
  color:#666;
  background:#fff;
  }

/* This is to make up for very bad CSS in the update.module */
.update table.version td { padding:5px; }
.update table.version ul.links a { padding:0px 5px; }
