/*!
 * Bootstrap v2.0.4
 *
 * Copyright 2012 Twitter, Inc
 * Licensed under the Apache License v2.0
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Designed and built with all the love in the world @twitter by @mdo and @fat.
 *
 * NOTE: THIS IS NOT A CLEAN VERSION OF BOOTSTRAP. As we work toward removing the
 * default theme's dependency on Bootstrap, we are deleting code from here that is
 * no longer required.
 */

 @import "common/foundation/mixins";

a:focus {
  outline: thin dotted #333;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
img {
  max-width: 100%;
}
.row {
  margin-left: -12px;
  *zoom: 1;
}
.row:before,
.row:after {
  display: table;
  content: "";
}
.row:after {
  clear: both;
}
[class*="span"] {
  float: left;
  margin-left: 12px;
}
.span24 {
  width: 1236px;
}
.span15 {
  width: 768px;
}
.span14 {
  width: 716px;
}
.span13 {
  width: 664px;
}
.span11 {
  width: 560px;
}
.span10 {
  width: 508px;
}
.span8 {
  width: 404px;
}
.span6 {
  width: 300px;
}
.span5 {
  width: 248px;
}
.span4 {
  width: 196px;
}
.span3 {
  width: 144px;
}
.span2 {
  width: 92px;
}
.offset2 {
  margin-left: 116px;
}
.offset1 {
  margin-left: 64px;
}

button.btn::-moz-focus-inner,
input[type="submit"].btn::-moz-focus-inner {
  padding: 0;
  border: 0;
}
.btn-group {
  position: relative;
}
.btn-group:before,
.btn-group:after {
  display: table;
  content: " ";
}
.btn-group:after {
  clear: both;
}
.btn-group + .btn-group {
  margin-left: 5px;
}
.btn-group > .btn {
  position: relative;
  float: left;
}
.btn-group > .btn:hover,
.btn-group > .btn:focus,
.btn-group > .btn:active,
.btn-group > .btn.active {
  z-index: 2;
}
.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0;
}

.dropdown {
  position: relative;
}
.dropdown-toggle {
  *margin-bottom: -3px;
}
.dropdown-toggle:active,
.open .dropdown-toggle {
  outline: 0;
}
.caret {
  display: inline-block;
  width: 0;
  height: 0;
  vertical-align: middle;
  border-top: 4px solid #000000;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
  content: "";
}
.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 4px 0;
  margin: 1px 0 0;
  list-style: none;
  background-color: #ffffff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  *border-right-width: 2px;
  *border-bottom-width: 2px;
  border-radius: 5px;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  background-clip: padding-box;
}
.dropdown-menu a {
  display: block;
  padding: 3px 15px;
  clear: both;
  font-weight: normal;
  line-height: 18px;
  color: #333333;
  white-space: nowrap;
}
.dropdown-menu li > a:hover,
.dropdown-menu .active > a,
.dropdown-menu .active > a:hover {
  color: #ffffff;
  text-decoration: none;
  background-color: #0088cc;
}
.open {
  *z-index: 1000;
}
.open > .dropdown-menu {
  display: block;
}
.fade {
  opacity: 0;
  -webkit-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear;
}
.fade.in {
  opacity: 1;
}

body {

  input, textarea, select {
    color: #222222;
  }

  p, pre, li, ul {
    font-size: 14px;
  }
  p {
    line-height: 20px;
  }

  code, pre {
    font-family: Consolas, Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Courier New", monospace, serif;
  }

  h1, h2, h3, h4, h5, h6 {
    margin: 0;
    font-family: inherit;
    font-weight: bold;
    color: inherit;
    text-rendering: optimizelegibility;
  }
  h1 {
    font-size: 30px;
    line-height: 36px;
  }
  h2 {
    font-size: 24px;
    line-height: 36px;
  }
  h3 {
    font-size: 18px;
    line-height: 27px;
  }
  h4, h5, h6 {
    line-height: 18px;
  }
  h4 {
    font-size: 14px;
  }
  h5 {
    font-size: 12px;
  }
  h6 {
    font-size: 11px;
    color: #999999;
    text-transform: uppercase;
  }

  // this removes the unwanted top margin on a paragraph under a heading
  h1+p, h2+p, h3+p, h4+p, h5+p, h6+p {
    margin-top:0px;
  }

  blockquote {
    margin: 15px 0 8px;
  }
  li {
    line-height: 18px;
  }
  form {
    margin: 0 0 18px;
  }
  label, input, button, select, textarea {
    font-size: 13px;
    font-weight: normal;
    line-height: 18px;
  }
  input, button, select, textarea {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  }
  label {
    display: block;
    margin-bottom: 5px;
  }
  select, textarea {
    display: inline-block;
    padding: 4px;
    margin-bottom: 9px;
    font-size: 13px;
    line-height: 18px;
    color: #555555;
  }
  input {
    &[type="text"], &[type="password"], &[type="datetime"], &[type="datetime-local"], &[type="date"], &[type="month"], &[type="time"], &[type="week"], &[type="number"], &[type="email"], &[type="url"], &[type="search"], &[type="tel"], &[type="color"] {
      display: inline-block;
      height: 18px;
      padding: 4px;
      margin-bottom: 9px;
      font-size: 13px;
      line-height: 18px;
      color: #555555;
    }
  }
  input {
    width: 210px;
  }
  textarea {
    width: 210px;
    height: auto;
    background-color: white;
    border: 1px solid #cccccc;
    border-radius: 3px;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
    -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
    transition: border linear 0.2s, box-shadow linear 0.2s;
  }
  input {
    &[type="text"], &[type="password"], &[type="datetime"], &[type="datetime-local"], &[type="date"], &[type="month"], &[type="time"], &[type="week"], &[type="number"], &[type="email"], &[type="url"], &[type="search"], &[type="tel"], &[type="color"] {
      background-color: white;
      border: 1px solid #cccccc;
      border-radius: 3px;
      box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
      -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
      transition: border linear 0.2s, box-shadow linear 0.2s;
    }
  }
  textarea:focus {
    border-color: rgba(82, 168, 236, 0.8);
    outline: 0;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
  }
  input {
    &[type="text"]:focus, &[type="password"]:focus, &[type="datetime"]:focus, &[type="datetime-local"]:focus, &[type="date"]:focus, &[type="month"]:focus, &[type="time"]:focus, &[type="week"]:focus, &[type="number"]:focus, &[type="email"]:focus, &[type="url"]:focus, &[type="search"]:focus, &[type="tel"]:focus, &[type="color"]:focus {
      border-color: rgba(82, 168, 236, 0.8);
      outline: 0;
      box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
    }
  }

  input {
    &[type="radio"], &[type="checkbox"] {
      margin: 3px 0;
      line-height: normal;
      cursor: pointer;
    }
    &[type="submit"], &[type="reset"], &[type="button"], &[type="radio"], &[type="checkbox"] {
      width: auto;
    }
  }

  select, input[type="file"] {
    line-height: 28px;
  }

  select {
    width: 220px;
    border: 1px solid #bbbbbb;
    &[multiple], &[size] {
      height: auto;
    }
    &:focus {
      outline: thin dotted #333333;
      outline: 5px auto -webkit-focus-ring-color;
      outline-offset: -2px;
    }
  }
  input {
    &[type="file"]:focus, &[type="radio"]:focus, &[type="checkbox"]:focus {
      outline: thin dotted #333333;
      outline: 5px auto -webkit-focus-ring-color;
      outline-offset: -2px;
    }
  }
  .radio, .checkbox {
    min-height: 18px;
    padding-left: 18px;
  }
  .radio input[type="radio"], .checkbox input[type="checkbox"] {
    float: left;
    margin-left: -18px;
  }
  .controls > {
    .radio:first-child, .checkbox:first-child {
      padding-top: 5px;
    }
  }
  .radio.inline, .checkbox.inline {
    display: inline-block;
    padding-top: 5px;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .radio.inline .radio.inline, .checkbox.inline .checkbox.inline {
    margin-left: 10px;
  }
  .input-xxlarge {
    width: 530px;
  }
  input[class*="span"], select[class*="span"], textarea[class*="span"] {
    float: none;
    margin-left: 0;
  }
  .input-append {
    input[class*="span"] {
      display: inline-block;
    }
  }
  .input-prepend {
    input[class*="span"] {
      display: inline-block;
    }
  }
  input, textarea {
    margin-left: 0;
  }
  input[disabled], select[disabled], textarea[disabled], input[readonly], select[readonly], textarea[readonly] {
    cursor: not-allowed;
    background-color: #eeeeee;
    border-color: #dddddd;
  }
  input {
    &[type="radio"][disabled], &[type="checkbox"][disabled], &[type="radio"][readonly], &[type="checkbox"][readonly] {
      background-color: transparent;
    }
  }
  .control-group {
    &.warning {
      > label {
        color: #c09853;
      }
      .checkbox, .radio, input, select, textarea {
        color: #c09853;
        border-color: #c09853;
      }
      .checkbox:focus, .radio:focus, input:focus, select:focus, textarea:focus {
        border-color: #a47e3c;
        box-shadow: 0 0 6px #dbc59e;
      }
      .input-prepend .add-on, .input-append .add-on {
        color: #c09853;
        background-color: #fcf8e3;
        border-color: #c09853;
      }
    }
    &.error {
      > label {
        color: #b94a48;
      }
      .checkbox, .radio, input, select, textarea {
        color: #b94a48;
        border-color: #b94a48;
      }
      .checkbox:focus, .radio:focus, input:focus, select:focus, textarea:focus {
        border-color: #953b39;
        box-shadow: 0 0 6px #d59392;
      }
      .input-prepend .add-on, .input-append .add-on {
        color: #b94a48;
        background-color: #f2dede;
        border-color: #b94a48;
      }
    }
    &.success {
      > label {
        color: #468847;
      }
      .checkbox, .radio, input, select, textarea {
        color: #468847;
        border-color: #468847;
      }
      .checkbox:focus, .radio:focus, input:focus, select:focus, textarea:focus {
        border-color: #356635;
        box-shadow: 0 0 6px #7aba7b;
      }
      .input-prepend .add-on, .input-append .add-on {
        color: #468847;
        background-color: #dff0d8;
        border-color: #468847;
      }
    }
  }
  input:focus:required:invalid, textarea:focus:required:invalid, select:focus:required:invalid {
    color: #b94a48;
    border-color: #ee5f5b;
  }
  input:focus:required:invalid:focus, textarea:focus:required:invalid:focus, select:focus:required:invalid:focus {
    border-color: #e9322d;
    box-shadow: 0 0 6px #f8b9b7;
  }

  .input-prepend, .input-append {
    margin-bottom: 5px;
  }
  .input-prepend input, .input-append input, .input-prepend select, .input-append select {
    position: relative;
    margin-bottom: 0;
    *margin-left: 0;
    vertical-align: middle;
    border-radius: 0 3px 3px 0;
  }
  .input-prepend input:focus, .input-append input:focus, .input-prepend select:focus, .input-append select:focus {
    z-index: 2;
  }
  .input-prepend .add-on, .input-append .add-on {
    display: inline-block;
    width: auto;
    height: 18px;
    min-width: 16px;
    padding: 4px 5px;
    font-weight: normal;
    line-height: 18px;
    text-align: center;
    text-shadow: 0 1px 0 white;
    vertical-align: middle;
    background-color: #eeeeee;
    border: 1px solid #cccccc;
  }
  .input-prepend .add-on, .input-append .add-on, .input-prepend .btn, .input-append .btn {
    margin-left: -1px;
    border-radius: 0;
  }
  .input-prepend .active, .input-append .active {
    background-color: #a9dba9;
    border-color: #46a546;
  }
  .input-prepend {
    .add-on, .btn {
      margin-right: -1px;
    }
    .add-on:first-child, .btn:first-child {
      border-radius: 3px 0 0 3px;
    }
  }
  .input-append {
    input, select {
      border-radius: 3px 0 0 3px;
    }
    .add-on:last-child, .btn:last-child {
      border-radius: 0 3px 3px 0;
    }
  }
  .input-prepend.input-append {
    input, select {
      border-radius: 0;
    }
    .add-on:first-child, .btn:first-child {
      margin-right: -1px;
      border-radius: 3px 0 0 3px;
    }
    .add-on:last-child, .btn:last-child {
      margin-left: -1px;
      border-radius: 0 3px 3px 0;
    }
  }

  .form-horizontal input, .form-horizontal textarea, .form-horizontal select,  .form-horizontal .input-prepend, .form-horizontal .input-append {
    display: inline-block;
    *display: inline;
    margin-bottom: 0;
  }
  .form-horizontal .hide {
    display: none;
  }

  .control-group {
    margin-bottom: 9px;
  }
  .form-horizontal {
    .control-group {
      margin-bottom: 18px;
      *zoom: 1;
      &:before {
        display: table;
        content: "";
      }
      &:after {
        display: table;
        content: "";
        clear: both;
      }
    }
    .control-indent {
      margin-left: 20px;
      margin-bottom: 10px;
    }
    .control-label {
      float: left;
      width: 140px;
      padding-top: 5px;
      text-align: right;
      font-weight: bold;
    }
    .controls {
      *display: inline-block;
      *padding-left: 20px;
      margin-left: 160px;
      *margin-left: 0;
      &:first-child {
        *padding-left: 160px;
      }
    }
  }

  .alert {
    padding: 8px 35px 8px 14px;
    margin-bottom: 18px;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
    background-color: #fcf8e3;
    border: 1px solid #fbeed5;
    border-radius: 4px;
    color: #c09853;
  }
  .alert .close {
    position: relative;
    top: -2px;
    right: -21px;
    line-height: 18px;
  }
  .alert-success {
    background-color: #dff0d8;
    border-color: #d6e9c6;
    color: #468847;
  }
  .alert-error {
    background-color: #f2dede;
    border-color: #eed3d7;
    color: #b94a48;
  }
  .alert-info {
    background-color: #d9edf7;
    border-color: #bce8f1;
    color: #3a87ad;
  }
  .alert {
    .close {
      float: right;
      font-size: 20px;
      font-weight: bold;
      line-height: 18px;
      color: black;
      text-shadow: 0 1px 0 white;
      opacity: 0.2;
      filter: alpha(opacity = 20);
      @include hover {
        color: black;
        text-decoration: none;
        cursor: pointer;
        opacity: 0.4;
        filter: alpha(opacity = 40);
      }
    }
    button.close {
      padding: 0;
      cursor: pointer;
      background: transparent;
      border: 0;
      -webkit-appearance: none;
    }
  }
  .bootbox.modal {
    .modal-footer {
      a.btn-primary {
        color: white;
      }
    }
  }
}

table {
  max-width: 100%;
  background-color: transparent;
}

.table {
  width: 100%;
  margin-bottom: 20px;
  th, td {
    padding: 8px;
    line-height: 20px;
    text-align: left;
    vertical-align: top;
    border-top: 1px solid #dddddd;
  }
  th {
    font-weight: bold;
  }
  thead th {
    vertical-align: bottom;
  }
  caption tr:first-child {
    th, td {
      border-top: 0;
    }
  }
  colgroup tr:first-child {
    th, td {
      border-top: 0;
    }
  }
  thead:first-child tr:first-child {
    th, td {
      border-top: 0;
    }
  }
  tbody tbody {
    border-top: 2px solid #dddddd;
  }
}

.table-condensed {
  th, td {
    padding: 4px 5px;
  }
}

.table-hover tr:hover {
  td, th {
    background-color: whitesmoke;
  }
}

table [class*=span] {
  display: table-cell;
  float: none;
  margin-left: 0;
}

.table {
  tbody tr {
    &.success td {
      background-color: #dff0d8;
    }
    &.error td {
      background-color: #f2dede;
    }
    &.warning td {
      background-color: #fcf8e3;
    }
    &.info td {
      background-color: #d9edf7;
    }
  }
}

.table-hover tr {
  &.success:hover td {
    background-color: #d0e9c6;
  }
  &.error:hover td {
    background-color: #ebcccc;
  }
  &.warning:hover td {
    background-color: #faf2cc;
  }
  &.info:hover td {
    background-color: #c4e3f3;
  }
}