/* Some resets for compatibility with existing CSS */
.date_selector, .date_selector * {
  width: auto;
  height: auto;
  border: none;
  background: none;
  margin: 0;
  padding: 0;
  text-align: left;
  text-decoration: none;
}

.date_selector {
  background-color: #fff;
  padding: 5px 5px 5px 5px;
  margin: 4px 0 0 -5px;
  position: absolute;
  z-index: 100000;
  display: none;
  border-left: 1px solid #ddd;
  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}

.date_selector_ieframe {
  position: absolute;
  z-index: 99999;
  display: none;
}

  .date_selector .month_nav {
    margin: 0;
    padding: 0;
    display: block;
  }

    .date_selector .month_name {
      font-weight: bold;
      line-height: 20px;
      display: block;
      text-align: center;
      color: #444444;
    }

    .date_selector .month_nav a {
      display: block;
      position: absolute;
      top: 3px;
      width: 20px;
      height: 20px;
      line-height: 20px;
      font-weight: bold;
      color: #444444;
      text-align: center;
      overflow: hidden;
    }

      .date_selector .month_nav a:hover, .date_selector .month_nav a:focus {
        background: none;
        color: #444444;
        text-decoration: none;
      }

    .date_selector .prev {
      left: 5px;
    }

    .date_selector .next {
      right: 5px;
    }

  .date_selector table {
    border-spacing: 0;
    border-collapse: collapse;
  }

    .date_selector th, .date_selector td {
      width: 2.1em;
      height: 2em;
      padding: 0;
      text-align: center;
      color: #444444;
    }

    .date_selector td {
      border: 1px solid #ddd;
      line-height: 2em;
      text-align: center;
      white-space: nowrap;
      background: #f0f0f0;
    }

    .date_selector td.today {
      background: #ddd;
    }

    .date_selector td.unselected_month {
      color: #ccc;
    }
      .date_selector td a {
        display: block;
        text-decoration: none !important;
        width: 100%;
        height: 100%;
        line-height: 2em;
        color: #666;
        text-align: center;
      }
      .date_selector td.today a {
        background: #ddd;
      }
      .date_selector td.selected a {
        background: #046380;
        font-weight: bold;
        color: #fff;
      }
        .date_selector td a:hover {
          background: #046380;
          color: #fff;
        }