body,form,fieldset,legend,object,img,iframe,
table,td,th,ul,li,ol,h1,h2,h3,h4,h5,h6,p,blockquote {
  margin:0;
  padding:0;
  border:0;
  vertical-align:baseline;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}

.pagination {
  margin: 0;
  line-height: auto;
}

ul,ol {
  list-style:none;
}
.clear-left {
  height:0;
  clear:left;
}
html {
  overflow-y:scroll;
}
body {
  line-height:1;
  background-color:#fff;
  color:#666;
  font-family:Arial,sans-serif;
  font-size:12px;
  margin-bottom:40px;
}
p {
  line-height:1.5em;
  margin-bottom:1.3em;
}
a:link, a:visited {
  color:#0076cc;
}
/* Restore white color for bootstrap button text */
a.btn-primary {
   color: white;
}
a:hover {
  color:#005695;
}
h1 {
  font-size:20px;
  font-weight:bold;
  color:#666;
}
h1.white {
  font-size:20px;
  font-weight:bold;
  color:white;
}
h2 {
  font-size:18px;
  font-weight:normal;
  color:#666;
}
h3 {
  font-size:12px;
  font-weight:bold;
  margin-bottom:10px;
}
th {
  text-align:left;
  font-weight:normal;
}
input {
  background:#fff;
  color:#666;
  font-size:14px;
  font-family:Arial,sans-serif;
  border:1px solid #bbb;
  border-top:1px solid #666;
  padding:2px 10px;
  vertical-align:top;
}
input[type=checkbox] {
  background:none;
  border:none;
}
select {
  background:#fff none;
  color:#666;
  font-size:14px;
  font-family:Arial,sans-serif;
  border:1px solid #bbb;
  border-top:1px solid #666;
}
textarea {
  background:#fff;
  color:#666;
  font-size:14px;
  font-family:Arial,sans-serif;
  border:1px solid #bbb;
  border-top:1px solid #666;
  padding:5px 10px;
  line-height:1.2em;
}
.base-container {
  width:960px;
  margin:0 auto;
  margin-top: 20px;
}
.bluebox {
  background-color:#edf2f6;
  padding:10px;
}
.bluebox h1 {
  font-size:18px;
  font-weight:normal;
  color:#000;
  margin-bottom:10px;
}

/* HEADER ================== */
#header {
  position:relative;
  height:75px;
}
#header h1 {
  position:absolute;
  left:0;
  top:18px;
  line-height:1.1em;
}
#header #login {
  position:absolute;
  top:21px;
  right:12px;
  color:#8c8c8c;
}
#header #login-form {
  position:absolute;
  top:10px;
  right:0px;
  width:450px;
  padding:9px 10px;
  background-color:#fafae6;
}
#header #login-form input {
  width:155px;
  margin-bottom:5px;
  margin-right:5px;
}
#header #login-form input.abtn {
  width:70px;
}
#header #login-form a {
  font-weight:bold;
  margin-right:10px;
}

#header #password-reset-link {
 padding-top:2px;
}

#body {
  padding-bottom:12px;
}

/* MAIN MENU =================== */
#main-nav {
  position:absolute;
  left:0;
  top:53px;
}
#main-nav > ul > li {
  display: inline;
  margin-right:5px;
  padding-left:9px;
  background:url(../images/menu-dash.png) no-repeat 0% 50%;
}
#main-nav li a:link,
#main-nav li a:visited {
  color:#0076cc;
  font-size:14px;
  font-weight:bold;
  text-decoration:none;
  line-height:1.1em;
}
#main-nav li .caret {
  border-top-color:#0076cc;
  border-bottom-color:#0076cc;
}
#main-nav li:first-child, #main-nav ul.dropdown-menu li {
  padding-left:0;
  background:none;
}
.dropdown-menu {
  /* We don't use roundrects in any other parts of SGIP
  so it seemed like a good idea to omit them here */
  border-radius: 0px;
  -webkit-border-radius: 0px;
  -moz-border-radius: 0px;
}
.dropdown-menu>li>a:hover, .dropdown-menu>li>a:focus {
  color: #ffffff;
  text-decoration: none;
  background-color: #f5f5f5;
  outline: 0;
}


/* SEARCH BAR ================== */
#search-bar {
  position:relative;
  padding:10px 12px;
  margin-bottom:10px;
  background-color:#fafae6;
}
#search-bar .new {
  position:absolute;
  top:10px;
  right:12px;
}


/* BUTTONS ==================== */
.base-container .abtn {
  display:inline-block;
  color:#000;
  padding:5px 15px;
  text-decoration:none;
  border:1px solid #bbb;
  background:#f9f9f9 url(../images/btn-bg.png) repeat-x left bottom;
}
.base-container input.abtn {
  padding:0px 10px;
  cursor:pointer;
  height:22px;
  font-size:12px;
}
/* IE7 adjustment */
* + html .base-container input.abtn {
  display:inline;
  zoom:1;
  margin-top:1px;
}
/* IE6 adjustment */
* html .base-container input.abtn {
  margin-top:1px;
}
/* Safari adjustment :( */
@media screen and (-webkit-min-device-pixel-ratio:0){
.base-container input.abtn {margin-top: 2px;}
}


/* TITLE BAR ==================== */
#title-bar {
  position:relative;
  height:40px;
}
#title-bar h2 {
  float:left;
  margin-right:20px;
  line-height:40px;
  color:#000;
}
.pagination .page-records {
  margin-right:25px;
}
.pagination .page-current,
.pagination a {
  margin-right:10px;
}

.export-btn {
  position:absolute;
  top:7px;
  right:0;
  min-height:18px;
  padding-top:4px;
  padding-right:27px;
  background:url(../images/icon-export.png) no-repeat right top;
}
* + html .export-btn {
  padding-right:7px;
}
* html .export-btn {
  padding-right:7px;
}
.export-btn input {
  background:none;
  padding:0;
  margin:0;
  border:none;
  color:#0076cc;
  font-size:12px;
  text-decoration:underline;
  cursor:pointer;
}


/* APP LIST TABLE ================== */
#applist {
  width:100%;
}
#applist th {
  text-align:left;
  background:#0277cc url(../images/table-header-bg.png) repeat-x left top;
  border-right:1px solid #79b6e2;
  color:#fff;
  height:25px;
  padding:0 6px 0 10px;
  vertical-align:middle;
  white-space:nowrap;
}
#applist th a:link,
#applist th a:visited {
  color:#fff;
  font-weight:bold;
  display:block;
  height:13px;
  padding-right:20px;
}
#applist th a.sorted:link,
#applist th a.sorted:visited {
  background:url(../images/icon-sort.png) no-repeat 100% 50%;
}
#applist div.truncate {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
}
#applist td.truncate {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
}
#applist .error a {
  color: red;
  font-weight: bold;
  text-decoration: underline;
  cursor: pointer;
}

#applist td {
  color:#000;
  padding:5px 10px;
  line-height:1.3em;
  vertical-align:middle;
  border-right:1px solid #edf2f6;
}
#applist .odd td {
  background-color:#edf2f6;
  border-right:1px solid #fff;
}
#applist td.t-id {
  width:121px;
  padding-right:5px;
  white-space:nowrap;
}
#applist td.t-appcompany,
#applist td.t-appcompany div.truncate {
  width:152px;
}

#applist td.t-hostcompany,
#applist td.t-hostcompany div.truncate {
  width:162px;
}
#applist td.t-address,
#applist td.t-address div.truncate {
  width:162px;
}
#applist td.t-state {
  width:70px;
}
#applist td.t-date {
  width:70px;
}
#applist td.t-due {
  width:70px;
  border-right:none;
}
#applist td.t-due .near-due {
  color:#b86e00;
}
#applist td.t-due .past-due {
  color:#c80000;
}
#applist td.t-due .inactive {
  color:#999;
}
#form-container {
  background-color:#edf2f6;
  padding:10px;
}
#form-container h1 {
  font-size:18px;
  font-weight:normal;
  color:#000;
  margin-bottom:10px;
}
.download-btn {
  background:url(../images/icon-export.png) no-repeat right top;
}

/* PDP FILE LIST ========== */
div#validation_errors {
  background-color: #EEE;
  padding: 20px;
}

div#validation_errors_inner {
  padding: 20px;
}

div#validation_errors .error {
  color: red;
  font-weight: bold;
  font-style: italic;
  cursor: auto;
}

#file-validation-errors-table {
  background: #FFF;
  border:  1px solid #000;
}

#file-validation-errors-table th, #file-validation-errors-table td {
  background: #FFF;
  border: 1px solid #000;
  color: #000;
  line-height: 1.2em;
}

tr.collapse {
  display:none;
}

a.remove {
  float: right;
  cursor: pointer;
}

#applist .t-download {
  text-align: center;
}

ul.messages li {
  font-weight: bold;
  padding: 10px;
}

ul.messages li.error {
  color: #f5f5f5;
  background-color: #FF7E7E;
}

ul.messages li.success {
  color: white;
  background-color: #32A35B;
}
div#search-filters ul.messages li.info {
  float: left;
}
/* PDP FILE UPLOAD ========== */
#file-upload th, #file-upload td {
  padding: 2px 4px;
}
div.explanatory-text {
  margin-bottom: 1.3em;
}
div.explanatory-text ul li {
  line-height:1.5em;
}

/* APP INTERVAL FILE AND METER INTERVAL FILE LIST ========== */
div#search-filters {
  margin: 8px 0px 0px 0px;
}

.search-form {
  padding: 8px 0px 8px 8px;
  background-color: #FAFAE6;
}

.search-form input#id_q, .search-form select#id_month_year{
  margin-right: 10px;
}
.search-form label {
  margin-right: 2px;
}
/* BUDGET SUMMARY TITLE ========== */
#budget-title {
  position:relative;
  height:190px;
}
#budget-title .action-list {
  position:absolute;
  right:5px;
  top:21px;
}
#budget-title .action-list li {
  float:left;
  display:inline;
  margin-left:38px;
  padding:4px 0;
  padding-right:26px;
  font-weight:bold;
}
#budget-title .action-list li.action-export {
  background:url(../images/icon-export.png) no-repeat 100% 0%;
}
#budget-title .action-list li.action-add {
  background:url(../images/icon-add.png) no-repeat 100% 0%;
}
#budget-title h4 {
  margin-top:8px;
  margin-bottom:27px;
  font-size:12px;
  font-weight:normal;
}

#budget-title .mfr-conc-limit {
  position: absolute;
  right: 5px;
  top: 83px;
  background-color: #dbe8f1;
  padding: 5px;
  line-height: 1.25
}

#budget-title .mfr-conc-limit span.first-line {
   font-weight: bold;
}


#summary-table {
  position:absolute;
  top:65px;
  right:0;
}
#summary-table th {
  width:292px;
  height:30px;
  font-weight:bold;
  text-align:left;
  padding-left:8px;
  vertical-align:middle;
  border-bottom:1px solid #dbe8f1;
}
#summary-table td {
  width:120px;
  height:30px;
  font-size:14px;
  text-align:right;
  vertical-align:middle;
  border-bottom:1px solid #dbe8f1;
}
#summary-table .summary-last-row td,
#summary-table .summary-last-row th {
  border-bottom:none;
}
#summary-table input {
  padding-left:5px;
  padding-right:5px;
  width:108px;
  text-align:right;
}
#summary-table input.abtn {
  width:70px;
  text-align:center;
}
#summary-table .abtn {
  margin-right:10px;
}
#summary-table .space-adjust {
  padding-right:5px;
  width:115px;
}


/* BUDGET SUMMARY TABLE ========== */

#budget-table {
  min-width:50%;
}
#budget-table th {
  padding-top:3px;
  padding-bottom:7px;
}
#budget-table td {
  padding-top:8px;
  padding-bottom:5px;
  color:#000;
}
#budget-table .summary td {
  background-color:#dbe8f1;
  font-weight:bold;
}
#budget-table .year-top td {
  border-top:1px solid #dbe8f1;
}
#budget-table .budget-year {
  width:41px;
  font-weight:bold;
}
#budget-table .budget-name {
  width:143px;
  color:#666;
}
#budget-table .budget-level {
  width:118px;
  padding-right:5px;
  text-align:right;
  border-right:1px solid #dbe8f1;
}
#budget-table .centered {
  text-align:center !important;
}
#budget-table .budget-total {
  width:123px;
  padding-right:5px;
  text-align:right;
  font-weight:bold;
}
#budget-table .tooltip-inner {
  /* See Tool Tips ticket #946 */
  font-weight:normal;
}

/* REPORTS TABLE ================= */

#reports-table {
  width:100%;
  border-top:1px solid #dbe8f1;
}
#reports-table th {
  text-align:left;
  font-weight:bold;
}
#reports-table td {
  text-align:right;
}
#reports-table a.btn-export:link,
#reports-table a.btn-export:visited {
  padding:5px 0;
  padding-right:27px;
  background:url(../images/icon-export.png) no-repeat right top;
}
#reports-table th,
#reports-table td {
  padding:10px;
  border-bottom:1px solid #dbe8f1;
}
#reports-table .special-row th,
#reports-table .special-row td {
  background-color:#dbe8f1;
  border-color:#edf2f6;
}

/* TRANSACTIONS TABLE =========== */

#transactions_table {
  margin-top:20px;
  width:100%;
}
#transactions_table th {
  padding:0 10px;
  padding-top:2px;
  padding-bottom:5px;
  border-right:1px solid #dbe8f1;
  border-bottom:1px solid #dbe8f1;
  white-space:nowrap;
}
#transactions_table td {
  height:33px;
  padding:0 10px;
  color:#000;
  border-right:1px solid #dbe8f1;
  border-bottom:1px solid #dbe8f1;
  vertical-align:middle;
  line-height:1.2em;
}
#transactions_table .transaction-form-row td {
  padding:0 5px;
  background-color:#fafae6;
}
#transactions_table th.transactions-action,
#transactions_table td.transactions-action {
  border-right:none;
  width:120px;
}
#transactions_table .transactions-amount,
#transactions_table .transactions-amount input {
  text-align:right;
}
#transactions_table input {
  padding-left:5px;
  padding-right:5px;
}
#transactions_table .width-gen {
  width:71px;
}
#transactions_table .width-type {
  width:122px;
}
#transactions_table .width-comment {
  width:231px;
}
#transactions_table input, #transactions_table select {
  font-size:12px;
}
#transactions_table input[name="effective_date"] {
  width: 63px;
}
#transactions_table select[name="account_to"],
#transactions_table .account_to {
  width: 70px;
}
#transactions_table select[name="account_from"],
#transactions_table .account_from {
  width: 70px;
}
#transactions_table select[name="transaction_type"] {
  width: 90px;
}
#transactions_table input[name="amount"] {
  width: 68px;
}
#transactions_table input[name="comment"] {
  width: 189px;
}


/* HOME PAGE SPECIFIC =========== */

#home-box {
  min-height:235px;
  padding-left:40px;
  padding-top:52px;
  margin-bottom:25px;
  background:#0076cc url(../images/home-box-bg.png) repeat-x left top;
  overflow:hidden;
}
* html #home-box {
  height:235px;
}
#home-box img {
  float:left;
  width:300px;
  border:3px solid #fff;
}
#home-box p {
  float:left;
  margin-left:40px;
  margin-top:-3px;
  display:inline;
  width:545px;
  color:#fff;
  font-size:15px;
  margin-bottom:1em;
}
#home-box a:link,
#home-box a:visited {
  color:#fff;
}
#home-content {
  padding-top: 20px;
}
#home-content h3 {
  color:#999;
  font-weight:normal;
  font-size:12px;
  padding-bottom:5px;
  border-bottom:1px solid #999;
}
.home-col {
  float:left;
  width:240px;
}
.last-col {
  display:inline;
  margin-left:30px;
  width:210px;
}
#home-content .logo2 {
  position:relative;
  left:-30px;
}
#home-content .logo3 {
  position:relative;
  left:25px;
}
#home-handbook-list {
  font-size: 1.5em;
  line-height: 2em;
}

#home-handbook-list ol {
  list-style: decimal !important;
  padding-left: 15px;
}

.colored-warning-banner {
  padding: 0.75em 1.5em;
  margin-bottom: 0.5em;
}
.colored-warning-banner h3,
.colored-warning-banner p {
  font-size: 15px;
  margin-bottom: 0.25em;
}
.colored-warning-banner a:link,
.colored-warning-banner a:visited {
  font-weight: bold;
}
#pub-calc-banner {
  background: #CDFECC;
  color: #2E6305;
}
/* FIXME:
overwrite the link colors here because we have a global rule that sets
all links to blue for some reason
*/
#pub-calc-banner a:link,
#pub-calc-banner a:visited {
  color: #2E6305;
}
#exhausted-budget-warning a:link,
#exhausted-budget-warning a:visited {
  color: #b94a48;
}

.announce_bar{
    height:10px;
    border-bottom:5px solid #3276b1;
}

h2.announce_header {
  font-size:20px;
  font-weight:bold;
  color:#000000;
}

/* MANUFACTURER REPORT TABLE =========== */
tr.gray-label td {
  color: #888;
  text-align: right;
}
#reports-container {
  width:48%;
  float: left;
}
#manufacturer-concentration-report {
  width:48%;
  height: 100%;
  float:right;
}
#manufacturer-table {
  width: 100%;
}
#manufacturer-table td {
  padding-top:8px;
  padding-bottom:5px;
}
#manufacturer-table .budget-total {
  text-align:right;
}
#manufacturer-table .budget-percentage {
  text-align: right;
}
.budget-orange {
  color: #FF7E00;
  font-weight: bold;
}
.budget-red {
  color: #FF0000;
  font-weight: bold;
}

/* FOOTER ======================== */
#footer {
  padding-top:10px;
  border-top:1px solid #f1f1f1;
  color:#8c8c8c;
  font-size:11px;
}
.mini-footer {
  margin-top: 10px;
  border-top: 1px solid #DDDDDD;
  color: #8c8c8c;
  font-size: 11px;
}
.bottomRcorner{
    float:right;
    bottom:10px;
    right: 10px;
}

/* PASSWORD RESET PAGE ======================== */
#password_reset .label_field input{
  float: left;
  margin-right: 5px;
}

.icon-white {
  color: white;
}

.pngicon {
  width: 12px;
  height: 12px;
  position: relative;
  display: inline-block;
  line-height: 1;
  top: 2px;
}
.validation-response-container {
  margin-top: 15px;
  padding: 15px;
  font-size: 14px;
  font-weight: bold;
}
.bg-danger {
  background-color: #f2dede;
}
.bg-success {
  background-color: #dff0d8;
}

.underline{
  text-decoration: underline;
}

#program_opening p{
  margin-bottom:0px;
}

#program_opening ol, ul{
  margin-left:20px;
  line-height: 1.5;
}

#program_opening h1{
  font-size:30px;
}

#program_opening {
  border:3px solid;
  padding: 10px;
  font-size: 14px;
}
/* Login boxes on home page ======================== */
.login-boxes{
    margin-bottom: 5px;
    border-radius: 10px;
    background: #E4E4E4;
    padding: 10px;
    width: 380px;
    height: 170px;
    }

.reg-boxes{
    margin-bottom: 10px;
    border-radius: 10px;
    background: #E4E4E4;
    padding: 10px;
    width: 380px;
    height: 130px;
}

#home-left{
    padding-top:10px;
}

/* Header floats ================================== */

.topRcorner{
    float:right;
    top:10px;
    right: 10px;
}

.mainTitles{
  float:left;
}

header{
    height: 48px;

}

/* DataTables beyond the default ==== */
.DT_styles{
  font-size: 12px;

}

.DT_styles th{
  font-weight: bold;
  background-color: #2980B9;
  color: white;
  white-space: nowrap;
  border-style: solid;
  border-width: 0 1px 0 0;

}

.DT_styles td:nth-child(0n+4){
    white-space: pre;
}

.DT_styles tr.even{
  background-color: #F1F1F1;
}

/* Fixes issue with overlapping col-sm-12 divs in forms */
div .col-sm-12{
  display: inline-block;
}

 /* Generic / Other ================================== */
.centered {
  text-align: center;
}
.g-recaptcha {
  display: inline-block;
  padding-bottom: 20px;

}
