/* -----------------------------------------------------------------------


 Blueprint CSS Framework 0.8
 http://blueprintcss.org

   * Copyright (c) 2007-Present. See LICENSE for more info.
   * See README for instructions on how to use Blueprint.
   * For credits and origins, see AUTHORS.
   * This is a compressed file. See the sources in the 'src' directory.

----------------------------------------------------------------------- */

/* reset.css */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;}
body {line-height:1.5;}
table {border-collapse:separate;border-spacing:0;}
caption, th, td {text-align:left;font-weight:normal;}
table, td, th {vertical-align:middle;}
blockquote:before, blockquote:after, q:before, q:after {content:"";}
blockquote, q {quotes:"" "";}
a img {border:none;}

/* typography.css */
body {font-size:75%;color:#222;background:#fff;font-family:"Helvetica Neue", Arial, Helvetica, sans-serif;}
h1, h2, h3, h4, h5, h6 {font-weight:normal;color:#111;}
h1 {font-size:2em;line-height:1;margin-bottom:0.5em;}
h2 {font-size:1.5em;margin-bottom:0.75em;}
h3 {font-size:1.2em;line-height:1;margin-bottom:1em;}
h4 {font-size:1em;line-height:1.25;margin-bottom:1.25em;}
h5 {font-size:1em;font-weight:bold;margin-bottom:1.5em;}
h6 {font-size:1em;font-weight:bold;}
h1, h2, h3, h4, h5, h6 { margin-bottom: 0.25em }
h1 img, h2 img, h3 img, h4 img, h5 img, h6 img {margin:0;}
p {margin:0 0 1.5em;}
p img.left {float:left;margin:1.5em 1.5em 1.5em 0;padding:0;}
p img.right {float:right;margin:1.5em 0 1.5em 1.5em;}
a:focus, a:hover {color:#000;}
a {color:#009;text-decoration:underline;}
blockquote {margin:1.5em;color:#666;font-style:italic;}
strong {font-weight:bold;}
em, dfn {font-style:italic;}
dfn {font-weight:bold;}
sup, sub {line-height:0;}
abbr, acronym {border-bottom:1px dotted #666;}
address {margin:0 0 1.5em;font-style:italic;}
del {color:#666;}
pre {margin:1.5em 0;white-space:pre;}
pre, code, tt {font:1em 'andale mono', 'lucida console', monospace;line-height:1.5;}
li ul, li ol {margin:0 1.5em;}
ul, ol {margin:0 1.5em 1.5em 1.5em;}
ul {list-style-type:disc;}
ol {list-style-type:decimal;}
dl {margin:0 0 1.5em 0;}
dl dt {font-weight:bold;}
dd {margin-left:1.5em;}
table {margin-bottom:1.4em;width:100%;}
th {font-weight:bold;}
thead th {background:#c3d9ff;}
th, td, caption {padding:4px 10px 4px 5px;}
tfoot {font-style:italic;}
caption {background:#eee;}
.small {font-size:.8em;margin-bottom:1.875em;line-height:1.875em;}
.large {font-size:1.2em;line-height:2.5em;margin-bottom:1.25em;}
.hide {display:none;}
.quiet {color:#666;}
.loud {color:#000;}
.highlight {background:#ff0;}
.added {background:#060;color:#fff;}
.removed {background:#900;color:#fff;}
.first {margin-left:0;padding-left:0;}
.last {margin-right:0;padding-right:0;}
.top {margin-top:0;padding-top:0;}
.bottom {margin-bottom:0;padding-bottom:0;}

/* forms.css */
.error, .notice, .success {padding:.8em;margin-bottom:1em;border:2px solid #ddd;}
.error {background:#FBE3E4;color:#8a1f11;border-color:#FBC2C4;}
.notice {background:#FFF6BF;color:#514721;border-color:#FFD324;}
.success {background:#E6EFC2;color:#264409;border-color:#C6D880;}
.error a {color:#8a1f11;}
.notice a {color:#514721;}
.success a {color:#264409;}

/* column container */
.col_mask {
        position:relative;  /* This fixes the IE7 overflow hidden bug */
        clear:both;
        float:left;
        width:100%;     /* width of whole page */
        overflow:hidden;    /* This chops off any overhanging divs */
}
/* common column settings */
.colleft {
        float:left;
        width:100%;
        position:relative;
}
#left_bar,
#right_container{
        float:left;
        position:relative;
        padding:0 0 1em 0;
        overflow: auto;
}
/* 2 Column (left menu) settings */
.left_menu {
}
.left_menu .colleft {
        right:82%;      /* right column width */
}
.left_menu #right_container {
        width:78%;      /* right column content width */
        left:100%;      /* 100% plus left column left padding */
}
.left_menu #left_bar {
        width:18%;      /* left column content width (column width minus left and right padding) */
        left:2%;      /* (right column left and right padding) plus (left column left padding) */
}

/* interior column set */
div.interior_column_set {
  overflow: auto;
}

div.column {
  float: left;
  width: 46%;
  padding: 1em;
}


body {
  background-color: #FFF;
  margin: 0px 0px;
  padding: 0px;
  font-size: 14px;
}

a {
  outline: none;
}

#archive_menu hr {
  width: 60%;
}

img#global_ajax_load_indicator {
  float: left;
  display: block;
  margin-top: 1em;
}

code {
    font-family: 'Inconsolata', 'Courier New', monospaced;
    font-size: .9em;
}

.wrapper {
  clear: both;
  width: 100%;
  min-width: 950px;
  margin: 0;
  padding: 0;
  overflow: auto;
}

div.logged_in_user {
    float:right;
    font-size: .85em;
    padding: .25em .5em 0 0;
}

.title_bar {
  padding: 0px; font-size: 150%; color: #000; font-weight: bold; float: left; padding-bottom:0px; overflow: auto;
}

.title_bar a {
    color: inherit;
    text-decoration: none;
    display: block;
    float: left;
}

.title_bar span.logo_green {
  color: #32CD32;
}

.title_bar span.logo_gray {
  color: #666;
}

.title_bar div.sub_title {
  clear: both; font-size: 60%;
}


.sub_title_bar {
  clear:both;
  background-color: #6495ED;
  color: #000;
  width: 100%;
  text-align: left;
  vertical-align: middle;
  color: #F0F8FF;
  font-family: arial;
  padding: 2px 0;
}

.system_status {
    float: right;
    margin: 0px 20px;
}

#account_status_bar {
  font-size: 85%;
  float: left;
}

div#notices {
  width: 100%;
  position: absolute;
  background-color: #6495ED;
  overflow: hidden;
}

div#notices .notice {
  text-align: center;
  width: 100%;
  margin: 0;
  padding: 5px;
  border: none;
  background: #EEE;
  color: gray;
}
div#notices .notice.warning {
  background: #FFA;
  color: red;
}
div#notices .notice.error {
  background: #F73;
  color: white;
  font-weight: bold;
}

div#centered_container { text-align: center; width: 60%; margin: 10px auto;overflow:auto; }
#no_email_apology {
  margin: 0.75em;
  padding: 0.5em;
  border: 2px solid #f2f2f2;
  background: #fafafa;
  border-radius: 8px;
  clear: both;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  -o-border-radius: 8px;
}

div#signup_box { width: 60%; margin: 10px 20%; text-align: center; }
a#signup { 
    display: block; 
    border: 1px solid black; 
    background-color: #AF5; 
    color: #111; 
    padding: 5px 10px; 
    width: 30%; 
    margin: 5px 38% 5px 32%; 
    text-decoration: none;
    font-size: 110%;
    font-weight: bold;
}
a#signup:hover { background-color: #32CD32; }

a.status_bar_button {
  color: white;
  border: 1px solid #F0FFF0;
  text-decoration: none;
  font-weight: bold;
  font-size: 80%;
  display: block;
  float: right;
  margin-right: 2px;
  padding: 6px 4px;
  background-color: #6495ED;
}

a.status_bar_button:hover {
  color: #6495ED;
  background-color: white;
  border: 1px solid #6495ED;
}

#right_container_messages {
  padding: 10px;
  color: #000;
  text-align: left;
  width: 81%;
  float: right;
  margin: 0;
}

#right_container {
  padding: 1em;
  color: #000;
  text-align: left;
  float: left;
  margin: 0;
  min-height: 20em;
  /* css min-height hack:
    older browsers that don't support min-height treat the height property like a min-height
  */
  height: auto !important;
  height: 20em;
}

#left_bar_messages {
  width: 15%;
  float: left;
  margin: 4px 4px;
}

#left_bar {
  margin-left: 0.25em;
  margin-top: 0.5em;
}

#left_bar .collapsed {
  display: none;
}

#left_bar .menu_container {
  padding: 5px;
  font-size: 95%;
}

#left_bar div h3 {
  background-color: #B3D1FF;
  border-color: #CCC;
  padding: 5px;
  color: #000;
  text-align: left;
  font-weight: bold;
  cursor: pointer; cursor: hand;
  font-size: 1em;
}

#left_bar li h3 {
  background-color: #FFF;
  border: 0px solid;
  border-color: #CCC;
  padding: 5px;
  color: #000;
  text-align: left;
  font-weight: bold;
}

#left_bar div ul {
  background-color: #FFFFFF;
  color: #000;
  text-align: left;
  list-style:none;
  margin: 0px;
  margin-bottom: .25em;
}

#left_bar div ul li {
  width:95%;
  border:0px;
  list-style:none;
  position:relative;
  padding: 0 0 0 5px;
}

#left_bar a {
  text-decoration:none;
  color:#000;
  font-weight: normal;
  width:100%; /* IE */
  display: block;
}

#left_bar a:hover {
  background-color:#FFFFE0;
  color:#000;
}

.menu_updown {
  float: right;
  cursor: pointer; cursor: hand; 
}

#archive_menu h4 img {
  vertical-align: middle;
}
#left_bar div ul li img {
  vertical-align: middle;
}

/* mailbox list */
#left_bar div#archive_menu { padding-top: 5px; }

#left_bar #archive_list {
  margin-top: .5em;
}

#archive_menu_title {
  -moz-border-radius-topleft:4px;
  -moz-border-radius-topright:4px;
  -webkit-border-top-left-radius:4px;
  -webkit-border-top-right-radius:4px;
}

#archive_menu .mailbox_title { margin-bottom: .25em; }
#archive_menu .mailbox_title a { text-decoration: none; color: #000; height: 1.5em; overflow: hidden; }

#archive_menu h5 {
  padding: 0.25em 0.25em 0.25em 1em;
  margin-top: 0.5em;
  background-color: #B3D1FF;
  font-size: 0.8em;
  font-weight: bold;
}

#archive_menu h5 + div {
  margin-left: .5em;
}

div.mailbox_listing {
  padding: .25em 0 0 .25em;
}

.mailbox_selected { background-color: #EEE; }

.mailbox_links {
  list-style-type: none;
  margin: 0px;
  padding: 0px;
  font-size: 0.9em;
}

#archive_menu .mailbox_links li {
  padding-left: 10px;
}

.mailbox_links li a {
  text-decoration: none;
  color: #0000ff;
}
.mailbox_links li a:visited {
  text-decoration: none;
  color: #0000ff;
}

div.menu_capstone h3 {
  height: 1.5em; background-color: rgb(179, 209, 255); margin-bottom: 0.5em;
  -moz-border-radius-bottomleft:4px;
  -moz-border-radius-bottomright:4px;
  -webkit-border-bottom-left-radius:4px;
  -webkit-border-bottom-right-radius:4px;
}

.right_container div.full {
  float: left;
}

.footer {
  clear: both; padding: 10px 0; color: #000; width: 100%; text-align: center;
}

.stats_box {
  float: right;
}

.stats_box label {
  font-weight: bold; font-size: .80em;
}

.stats_box div {
  padding: 5px; float: left; border: 1px dashed; width: 125px; height: 100px; border-color: #AAA;
}

.stats_box div label {
  text-align: center; font-weight: bold; text-decoration: underline;
}

.stats_box div p {
  text-align: center;
}

hr {
  clear: both;
  padding: 0px;
  height: 1px;
  border: 0;
  color: #CCC;
  background-color: #CCC;
}

h1 {
  font-weight: bold;
  color: #000;
}

h2 {
  font-weight: bold;
  color: #336699;
  margin-bottom: 0.5em;
}

h3 {
  font-weight: bold;
  color: #00793B;
}

h4 {
  color: #000;
}

table + h4{ margin-top: 10px; }

p {
  font-weight: normal;
  color: #333333;
}

p.incr, .incr p {
  font-size: 10px;
  line-height: 1.44em;
}

.service {
  float: left;
  padding: 10px;
  color: #000;
  width: 200px;
  min-height: 200px;
}

.service ul {
  margin: 20px;
  padding: 0px;
  border: none;
}

.service li {
  list-style-type: square;
}

.item_list {
  background-color: #6495ED;
  border: 1px solid #CCC;
}

table.management { width: 100%; font-size: 0.85em; }
table.management th {
  background-color: #B4EEB4;
  text-align: left;
  color: #000;
  padding: 5px;
  border: 1px solid #555;
  border-top-width: 0px;
  border-left-width: 0px;
}
table.management th a {
  color: #000;
}
table.management tr {
  background-color: #FFF;
}
table.management tr.item td {
  padding: 5px;
  border: 1px solid #AAA;
  border-top-width: 0px;
  border-left-width: 0px;
  vertical-align: top;
}

table.management tr.even {
  background-color: #F0FFF0;
}

.info_chunk {
  margin-bottom: 10px;
  overflow: auto;
}

.info_chunk div {
  padding: 0.25em;
}

.list_add {
  padding: 5px;
}

.list_add a {
  padding: 5px;
  display: block;
  width: 100px;
  border: 1px solid #aaa;
  border-top-width: 0px;
  border-left-width: 0px;
  text-align: center;
  text-decoration: none;
  color: #000;
  float: left;
  margin-right: 10px;
}

.list_item_options a {
  padding: 2px 3px 2px 3px;
  display: block;
  float: left;
  margin-right: 2px;
  border: 1px solid #aaa;
  border-top-width: 0px;
  border-left-width: 0px;
  text-align: center;
  text-decoration: none;
  color: #00F;
    
}

.italic { font-style: italic; }
.bold { font-weight: bold; }

img { border: 0; }

.hint { background-color: #FFA; margin: 10px; padding: 5px; }

.breadcrumb li {
  list-style-type: none;
  margin: 0 0 0 0px;
  display: inline;
  padding: 0px 5px 0px 0px;
  color: #fff;
}

.breadcrumb li a { color: #fff; text-decoration: none; }
.breadcrumb li a:visited { color: #fff; text-decoration: none; }

.breadcrumb {
    margin: 0 0 0 0px;
    padding: 5px 0px 0px 10px;
}

.clear { clear: both; }

.on { color: green; font-weight: bold; }
.off { color: red; font-weight: bold; }

ul.form_option_list li {
  list-style-type:none;
}

div.client_help {
  font-weight: bold;
}

div.help_content {
  padding: 4px;
  height: 342px;
  overflow: scroll;
}

.stats {
  font-size: 0.9em;
}
.stats_summary {
  border: 1px solid #ccc;
  padding: tpx;
}
.stats_summary_heading {
  font-weight: bold;
  margin: 0px;
  float: left;
  padding: 0px;
  width: 10%;
}

.stats_summary_value {
  margin-left: 10px;
  float: left;
  width: 15%;
  text-align: right;
}

ul.tabs {
  height: 20px;
  margin: 0 0 10px 0;
  padding-left: 0px;
}

ul.tabs li {
  margin: 0;
  padding: 0;
  display: inline;
  list-style-type: none;
}

ul.tabs a:link, ul.tabs a:visited {
  float: left;
  background: #f3f3f3;
  font-size: 10px;
  line-height: 14px;
  font-weight: bold;
  padding: 2px 10px 2px 10px;
  margin-top: 4px;
  margin-right: 4px;
  border: 1px solid #ccc;
  text-decoration: none;
  color: #666;
}

ul.tabs a:link.active, ul.tabs a:visited.active {
  background: #FFFFCC;
  color: #000;
}

ul.tabs a:hover { background: #fff; }

ul.radio_options { list-style-type: none; }

div#current_tab {
  border-width: 0 1px 1px 1px;
  border-color: #CCC;
  border-style: solid;
  margin: 0;
  padding: 10px;
  clear: both;
}

div.primary_contact_details { float: left; border: 1px solid black; margin: 3px; width: 30%; padding: 0; }
div.primary_contact_details h4 { background: #EEE; margin: 0 0 5px 0; padding: 2px; text-align: center; }
div.primary_contact_details div { padding: 3px; }

.dashboards_menu { font-size: 90%; }

.slice_and_dice { font-size: 0; }

.warn {
  color: black;
  font-weight: bold;
  background-color: yellow;
  text-align: center;
}
.critical {
  color: white;
  font-weight: bold;
  background-color: red;
  text-align: center;
}
.ok {
  color: white;
  font-weight: bold;
  background-color: green;
  text-align: center;
}
.unknown {
  color: white;
  font-weight: bold;
  background-color: gray;
  text-align: center;
}

.menu_expand_collapse {
  float: left; 
  margin: 0px 4px 0 0;
  cursor: pointer; cursor: hand; 
}

.error,
.notice, 
.success    { padding: .8em; margin-bottom: 1em; border: 2px solid #ddd; }

.error      { background: #FBE3E4; color: #8a1f11; border-color: #FBC2C4; }
.notice     { background: #FFF6BF; color: #514721; border-color: #FFD324; }
.success    { background: #E6EFC2; color: #264409; border-color: #C6D880; }
.error a    { color: #8a1f11; }
.notice a   { color: #514721; }
.success a  { color: #264409; }

.errors {
  color: #F73;
}

.tooltip {
  position: absolute;
  border: 1px solid gray;
  background-color: #FFC;
  padding-left: .25em;
  padding-right: .25em;
}

.data_age_critical {
  background-color: red;
}

.data_age_warn {
  background-color: yellow;
}

.data_age_ok {}

.giki_revision_number {
  padding: 5px;
  background-color: yellow;
}

.top_tools_menu {
  margin-top: 2px;
  border-bottom: 1px solid #B3D1FF;
  padding: 4px;
  font-size: 90%;
}

.top_tools_menu_list {
  list-style-type: none;
  margin: 0px;
  padding: 0px;
}

.top_tools_menu_list li {
  margin: 0px;
  padding: 0px;
  float: left;
  margin-right: 10px;
}
.top_tools_menu_list li a {
  text-decoration: none;
  color: #0000ff;
}
.top_tools_menu_list li a:visited {
  text-decoration: none;
  color: #0000ff;
}

.top_tools_menu_title a {
  text-decoration: none;
  color: #0000ff;
}
.top_tools_menu_title a:visited {
  text-decoration: none;
  color: #0000ff;
}
.top_tools_menu_title {
  float: left;
  font-weight: bold;
  margin-right: 10px;
  padding-left: 10px;
  border-left: 1px solid #eee;
}

#top_tools_menu_open {
  float: left;
  width: 80%;
}
.top_tools_menu_closed {
  float: right;
}

.label { font-weight: bold; }

span.deemphasized {
  color: #bcbcbc;
  font-style: italic;
}

/* wrap_round -- a rounded-corner div that provides a nice frame for other block-level content */
div.wrap_round {
  background-color: #E9F2FF;
  margin: 0 5px;
  padding: 5px;
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
}

div.wrap_round * {
  background-color: #fff;
}

.chatter {
  background-color: #fff;
  border-bottom: 1px dashed #eee;
  padding: 10px;
  margin-bottom: 10px;
}

.chatter_date {
  color: #999;
  font-style: italic;
  font-size: 90%;
  padding: 5px;
}


.billing_summary {
  margin-top: 10px;
  background-color: #F0FFF0;
  padding: 5px;
}

.billing_summary td { padding: 5px; }

.billing_charge_table { width: 100%; }
.billing_charge_table td { padding: 5px; }
.billing_charge_table .item {
  background-color: #F0FFF0;
}

.info_box { border: 1px dashed #eee; padding: 10px; margin-bottom: 10px; float: left; margin-right: 10px; }
.info_box .heading { font-weight: bold; }
.info_box .value { color: #555; }
.info_box .flag { color: #F00; }

.note { border: 1px dashed #eee; padding: 10px; margin-bottom: 10px; overflow: auto; }
.note_signature { color: #555; font-size: 95%; margin-bottom: 0px; }
.destroy_note { float: right; }
textarea#note_content { width: 90%; }
.customer_notes { float: left; width: 25%; }
.statements { float: left; width: 75%; }

hr.form_ender {
  width: 75%;
  margin-top: 2em;
}

/**
* Search form stylin'
**/
#archive_search {
  overflow: auto;
  text-align: center;
  margin-bottom: 0.5em;
  border: 0.3em solid #CCC;
  border-color: rgba(0, 0, 0, 0.25);
  background-color: #E6F0FF;
  -moz-border-radius:     8px;
  -webkit-border-radius:  8px;
  border-radius:          8px;
}
#archive_search h3 {
  background-color: #6495ED;
  background-color: rgba(100, 149, 237, 0.5);
  padding: 0.5em;
  color: black;
  color: rgba(0,0,0,0.7);
}
#archive_search div.wrap {
  padding: 0.5em;
  padding-top: 0;
  overflow: auto;
  width: 30em;
  margin: 0 auto;
}
#archive_search div.wrap #text_search {
  width: 300px;
}

#search {
  float: right;
}
#search #text_search {
  float: left;
  width: 250px;
}
#search #search_submit {
  margin-top: 5px;
}

#open_advanced_search { display: block; float:left; height: 1.3em; padding: 4px 2px; margin: 5px 0px; }
.criterion input[type="text"] { width: 200px; }

#advanced_search {
  width: 690px;
}

div.content div {
  overflow: auto;
}

div.content label {
  width: 10em;
}

.date_criteria { display: inline; }
#add_criterion, #any_or_all { margin-top: 8px; }
#any_or_all { margin-left: 8px; }
#add_criterion { float: left; }
#advanced_search_button {
  float: right;
}



/* -------------------------------------------------------------------------------------------------

It's *strongly* suggested that you don't modify this file.  Instead, load a new stylesheet after
this one in your layouts (eg formtastic_changes.css) and override the styles to suit your needs.
This will allow you to update formtastic.css with new releases without clobbering your own changes.

This stylesheet forms part of the Formtastic Rails Plugin
(c) 2008 Justin French

--------------------------------------------------------------------------------------------------*/

/* FIELDSETS & LISTS
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset { }
form.formtastic fieldset.inputs { }
form.formtastic fieldset.buttons { padding-left:12em; }
form.formtastic fieldset ol { }
form.formtastic fieldset.buttons li { float:left; padding-right:0.5em; }

/* INPUT LIs
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li { margin-bottom:.5em; list-style-type: none; }

/* clearfixing the li's */
form.formtastic fieldset ol li { overflow: auto;  }

form.formtastic fieldset ol li.required { }
form.formtastic fieldset ol li.optional { }
form.formtastic fieldset ol li.error { }

form.formtastic fieldset ol li abbr { border: none; }

/* LABELS
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li label { width:12em; float:left; padding-top:.2em; }
form.formtastic fieldset ol li li label { line-height:100%; padding-top:0; }
form.formtastic fieldset ol li li label input { line-height:100%; vertical-align:middle; margin-top:-0.1em;}


/* NESTED FIELDSETS AND LEGENDS (radio, check boxes and date/time inputs use nested fieldsets)
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li fieldset { position:relative; }
form.formtastic fieldset ol li fieldset legend { position:absolute; width:25%; padding-top:0.1em; }
form.formtastic fieldset ol li fieldset legend span { position:absolute; }
form.formtastic fieldset ol li fieldset ol { float:left; width:74%; margin:0; padding:0 0 0 12em; }
form.formtastic fieldset ol li fieldset ol li { padding:0; border:0; }


/* INLINE HINTS
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li p.inline-hints { color:#666; margin:0.5em 0 0 25%; }


/* INLINE ERRORS
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li p.inline-errors { color:#cc0000; margin:0.5em 0 0 25%; }
form.formtastic fieldset ol li ul.errors { color:#cc0000; margin:0.5em 0 0 25%; list-style:square; }
form.formtastic fieldset ol li ul.errors li { padding:0; border:none; display:list-item; }

/* TEXTAREA OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.text textarea { width:74%; }


/* HIDDEN OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.hidden { display:none; }


/* BOOLEAN OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.boolean label { padding-left:14em; width:auto; }
form.formtastic fieldset ol li.boolean label input { margin:0 0.5em 0 0.2em; }


/* RADIO OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.radio { }
form.formtastic fieldset ol li.radio fieldset ol { margin-bottom:-0.6em; }
form.formtastic fieldset ol li.radio fieldset ol li { margin:0.1em 0 0.5em 0; }
form.formtastic fieldset ol li.radio fieldset ol li label { float:none; width:100%; }
form.formtastic fieldset ol li.radio fieldset ol li label input { margin-right:0.2em; }


/* CHECK BOXES (COLLECTION) OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.check_boxes { }
form.formtastic fieldset ol li.check_boxes fieldset ol { margin-bottom:-0.6em; }
form.formtastic fieldset ol li.check_boxes fieldset ol li { margin:0.1em 0 0.5em 0; }
form.formtastic fieldset ol li.check_boxes fieldset ol li label { float:none; width:100%; }
form.formtastic fieldset ol li.check_boxes fieldset ol li label input { margin-right:0.2em; }



/* DATE & TIME OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.date fieldset ol li,
form.formtastic fieldset ol li.time fieldset ol li,
form.formtastic fieldset ol li.datetime fieldset ol li { float:left; width:auto; margin:0 .3em 0 0; }

form.formtastic fieldset ol li.date fieldset ol li label,
form.formtastic fieldset ol li.time fieldset ol li label,
form.formtastic fieldset ol li.datetime fieldset ol li label { display:none; }

form.formtastic fieldset ol li.date fieldset ol li label input, 
form.formtastic fieldset ol li.time fieldset ol li label input, 
form.formtastic fieldset ol li.datetime fieldset ol li label input { display:inline; margin:0; padding:0;  }


/**
* forms.css - put'cher form style code in here, so that we might winnow it down over time.
*   with the move to formtastic, this is the place where overrides to selectors from formtastic.css
*   should go!
*
*   also worth a note: plz keep form *control* css in controls.css, since I'm trying to reuse
*   control styles wherever they should appear, not just on forms
**/
input[type="text"],
input[type="password"],
input[type="checkbox"],
input[type="radio"],
textarea,select {
    margin: 5px;
    border: 1px solid #ddd;
    padding: 0.5em;
}
textarea {
  font-family: inherit;
  font-size: 80%;
}

.field { overflow:auto; }
.field label { display: block; float: left; width: 9em; text-align: left; margin: 5px; }
.field.required label { font-weight: bold; }
.field input { float: left; vertical-align: middle; margin: 5px; /* border: 1px solid #ddd; */ padding: 4px; }
.field textarea { display: block; float: left; vertical-align: middle; margin: 5px; border: 1px solid #ddd; padding: 4px;width:20em;height:9em; }
.field select { display: block; float: left; vertical-align: middle; margin: 5px; border: 1px solid #ddd; padding: 4px; }
.form_content { border: 2px solid #E9F4E6; padding: 10px; }

/* formtastic in right column layout */
div#right_container form.formtastic {
  width: 80%;
  margin-right: auto;
}
/* end formtastic in right column */

/* formtastic across columns */
div#right_container form.formtastic {
  width: auto;
  margin: 0;
}
/* end formtastic across columns */

/* formtastic overrides */
form.formtastic fieldset ol li.required label { font-weight: bold; }
form.formtastic fieldset ol li label { padding-top: .5em; }
form.formtastic fieldset ol li.string input { width: 30em; }
form.formtastic fieldset ol li select { margin-top: .8em; }
form.formtastic fieldset ol li.numeric.short input { width: 5em; }
form.formtastic fieldset ol li.numeric.short p.inline-hints { display: inline; margin: 0; }
form.formtastic fieldset ol li.text textarea { height: 4em; width: 30em; }
/* end formtastic overrides */

/* formtastic in a popup */
.popup form.formtastic fieldset ol li.text label { width: 8em; }
.popup form.formtastic fieldset ol li.string label { width: 8em; }
.popup form.formtastic fieldset ol li.string input   { width: 20em; }
.popup form.formtastic fieldset ol li.text textarea  { width: 20em; }
.popup form.formtastic { padding: 1em; }
.popup form.formtastic fieldset ol li p.inline-hints { margin-left: 9em; }
.popup form.formtastic fieldset ol li.boolean label { padding-left: 12.5em; }
.popup form.formtastic fieldset ol li.boolean label input { margin: 5px; }
/* end formtastic in a popup */

/* Form Error Messages */
.errorExplanation {
  color: #8a1f11;
  width: 75%;
  border: 2px solid #8a1f11;
  border-radius:                    6px;
  -moz-border-radius:               6px;
  -webkit-border-radius:            6px;
  padding-bottom: 1em;
  margin: 0 auto 1em auto;
  background: #ffefef;
}

.errorExplanation h2 {
  text-align: left;
  font-weight: bold;
  padding: 0.5em 1em;
  margin-bottom: 0.5em;
  font-size: 1em;
  background: #FBE3E4;
  color: #8a1f11;
  border-top-left-radius:           6px;
  border-top-right-radius:          6px;
  -moz-border-radius-topleft:       6px;
  -webkit-border-top-left-radius:   6px;
  -moz-border-radius-topright:      6px;
  -webkit-border-top-right-radius:  6px;
}

.errorExplanation p,
.errorExplanation ul {
  color: #333333;
  margin-bottom: 0;
  padding: 0 1em;
  font-size: 0.85em;
}
/* /end form error messages */

/**
* email stylings -- composing and responding to existing email addresses
**/
div.email {
  font-size: 1.2em;
  float: left;
  margin-left: 1em;
}
div.email .field {
  margin-bottom: 0.1em;
}

div.email .field label {
  width: 5em;
  margin: 0;
}

div.email select,
div.email input,
div.email textarea {
  margin: 0;
  font-family: "Helvetica Neue", Arial, Sans-Serif;
}

div.email .email_headers textarea {
  height: 2.5em;
}

div.email .email_headers input {
  font-size: 16px;
  width: 40em;
  padding: 5px;
}

div.email .subject {
  margin-top: 1em;
}

div.email .email_headers {
  margin-bottom: 1em;
}

div.email textarea {
  width: 40em;
  height: 15em;
  padding: 5px;
  font-size: 16px;
}

div.email .controls {
  margin-top: 0.5em;
  float: right;
}

div.email .controls input {
  font-size: 1em;
  border: 1px solid #339900;
  float: right;
  background-color: #E2F0DB;
}
div.email .controls input:hover {
  background-color: #A8D392;
}
/** /email **/

/* Put'cher css styling for control elements (a's, button's, etc.) here! */
div.explanation {
    float: right;
    border: 2px solid black;
    background-color: #FAFDB2;
    padding: 1em;
    width: 25em;
    font-size: .85em;
}

div.explanation p + p {
  margin-bottom: 0;
}

div.buttons {
  overflow:auto;
}

form div.buttons {
  padding-left: 12em;
}

.popup form div.buttons {
  padding-left: 2em;
}

button,
.formtastic input[type='submit'],
.button {
  font-family:"Helvetica Neue", Arial, Helvetica, sans-serif;
  font-size: inherit;
  margin: 0.5em;
  border: 1px solid #ddd;
  padding: 0.75em 1em;
  line-height: 1em;
  background-color: #F7F5F1;
  text-decoration: none;
  color: black;
  float: left;
  vertical-align: middle;
  
  border-radius: .25em;
  -webkit-border-radius: .25em;
  -moz-border-radius: .25em;
  text-shadow: 1px 1px 1px #fff;
  text-shadow: 1px 1px 1px rgba(255,255,255,0.5);
  -webkit-box-shadow: 1px 1px 2px rgba(127,127,127,0.5);
}

div.formtastic.buttons input[type='submit'].button {
  padding-left: 2.25em;
  background-image: url(/images/accept.png);
  background-repeat: no-repeat;
  background-position: 0.75em center;
}

.button.inline {
  -webkit-box-shadow: none;
  padding: 0.5em;
  margin: 0;
  text-shadow: none;
}

.button.lozenge {
  padding: 0.25em 0.5em;
  margin: 0.3em 0 0 0.5em;
  border-color: #b3d1ff;
  border-radius:          .75em;
  -webkit-border-radius:  .75em;
  -moz-border-radius:     .75em;
  background-color: #D4DEEF;
}

button:hover,
.formtastic input[type="submit"]:hover,
.button:hover {
  cursor: hand;
  cursor: pointer;
  background-color: #D4DEEF;
  color: #336699;
  -webkit-transition: all 0.1s ease-in;
}

.button.lozenge:hover {
  background-color: #b3d1ff;
}

.button img {
  margin:0 3px -3px -3px !important;
  padding:0;
  border:none;
  width:16px;
  height:16px;
  float:none;
}
.button.inline img {
  margin: 0 0 -3px 0 !important;
}
.button.icon_only img {
  margin: 0 -4px -3px 3px !important;
}
.button.icon_only.negative img {
  margin: 0 -1px -3px 3px !important;
}

#archive_menu .button {
  float: none;
  display: inline;
  background: transparent;
  border: none;
  margin-left: 0;
}

a.button.disabled {
  background-color: #F2F2F2;
  color: #B5B5B5 !important;
}

a.button.disabled img {
  opacity: .65;
}

.button.cancel {
  font-size: 11px;
}

.button.negative {
  background:#FBE3E4;
  color:#8a1f11;
  border-color:#FBC2C4;
}

.formtastic input[type="submit"].button.positive,
.button.positive {
  background-color:#E6EFC2;
  /*background-image: -webkit-gradient(linear, left top, left bottom, from(#C6D880), to(#C6D880),color-stop(0.4, #E6EFC2));*/
  color:#264409;
  border-color:#C6D880;
}
.button.start {
  color: #203140;
  background-color: #C1CCD6;
  border-color: #96B7D6;
}

.formtastic input[type="submit"].button.positive:hover,
.button.positive:hover {
  background-color: #C6D880;
  /*background-image: -webkit-gradient(linear, left top, left bottom, from(#C6D880), to(#C6D880),color-stop(0.4, #A8B577));*/
}
.button.negative:hover {
  background-color:#FBC2C4;
}
.button.start:hover {
  background-color: #6BA2D6;
}

div.buttons.page_control .button.positive {
  float: right;
}

#tag_box {
  overflow:auto;
}

.tag.button {
  line-height: 21px;
  padding: 4px 6px 3px 6px;
}

.tag.button.success {background:#E6EFC2;color:#264409;border-color:#C6D880;}

/* Cell Content */
a.metadata {
  text-decoration: none !important;
}

/* login or signup nubbin */
div#login_or_signup {
  float: right;
  padding: 0.5em 0.5em 0 0;
}

/* the nicer-looking popup control panes on the message list */
div.popup {
  border: 0.5em solid #CCC;
  border-radius: 8px;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  position: absolute;
  width: 450px;
  height: auto;
  top: 100px;
  left: 300px;
  background: #FFF;
  box-shadow:         8px 8px 8px rgba(68, 68, 68, 0.6);
  -webkit-box-shadow: 8px 8px 8px rgba(68, 68, 68, 0.6);
  -moz-box-shadow:    8px 8px 8px rgba(68, 68, 68, 0.6);
}

div.popup div.content {
  padding: 0.5em;
  overflow: auto;
}

div.drag_handle {
  background: #6495ED;
  font-weight: bold;
  color: #FFF;
  border: 0;
  overflow: auto;
}

.drag_handle h5 {
  margin-bottom: 0 !important;
  padding: 0.25em;
  padding-left: 0.75em;
  color: white;
}

.drag_handle a {
  display: block;
  float: right;
  border-left: 1px solid #FFF;
  text-decoration: none;
  padding: 0.25em;
  color: white;
}
.drag_handle a:hover {
  background: #EEA;
}
.drag_handle a:visited {
  color: white;
}
/* here ends the popup box styles */

/* date selector css from: http://www.frequency-decoder.com/2006/10/02/unobtrusive-date-picker-widgit-update */
/* The wrapper div */
div.date_selector {
  position:absolute;
  min-width:24em;
  width:24em;
  z-index:9999;
  text-align:center;
  font:900 0.8em/0.8em Verdana, Sans-Serif;
  background:transparent;

  /* Mozilla & Webkit extensions to stop text-selection. Remove if you wish to validate the CSS */
  -moz-user-select:none;
  -khtml-user-select:none;
}
/* The next & previous buttons */
div.date_selector th.back a, div.date_selector th.forward a {
  display:inline;
  padding:0;
  margin:0;
  color:#000;
  text-align:center;
  font-size: 1.2em;
  line-height:1em;
  border-width:0;
  font-family: georgia, times new roman, palatino, times, bookman, serif;
  background:transparent;
  font-weight:bold;
  cursor:pointer;
  text-decoration: none;
  font-weight: bold;
}
div.date_selector th.month_label {
  text-transform:uppercase;
  letter-spacing:1px;
  font:normal 1.2em Verdana, Sans-Serif;
  cursor:default;
}
/* The mon, tue, wed etc day buttons */
div.date_selector tr.day_header th {
  text-align:center;
  margin:0 auto;
  font:900 1em Verdana, Sans-Serif;
  height:1.8em;
  width:2em;
  text-decoration:none;
  line-height:1.8em;
}
/* The table */
div.date_selector table {
  position:relative;
  margin:0;
  padding:0;
  border:1px solid #ccc;
  background:#fff url(/images/calendar/gradient-e5e5e5-ffffff.gif) repeat-x 0 -20px;
  text-align:center;
  width:100%;
  border-spacing:2px;
  table-layout:fixed;
  border-collapse:separate;
}
/* Common TD & TH styling */
div.date_selector table td {
  border:1px solid #ccc;
  padding:0;
  text-align:center;
  vertical-align:middle;
  /* Opera requires a line-height bigger than 1em in order to redraw properly */
  line-height:1.2em;
  cursor:pointer;
  background:#fff url(/images/calendar/gradient-e5e5e5-ffffff.gif) repeat-x 0 -40px;
  width:3em;
  height:3em !important;
  height:2.8em;
  outline:none;
}
div.date_selector table th {
  border:0 none;
  padding:0;
  line-height:1em;
  font-weight:bold;
  color:#222;
  text-align:center;
  vertical-align:middle;
}

div.date_selector table td.selected {
  border-color:#333 !important;
  background: #FFFFBB;
}
div.date_selector table td.selected a {
  color:#333 !important;
}


/**
* will_paginate pagination styles
**/
/* default style is somewhat fancy, like Flickr */
.pagination {
  text-align: center;
  padding: .3em;
}
.pagination a, .pagination span {
  padding: .2em .5em;
}
.pagination span.disabled {
  color: #AAA;
}
.pagination span.current {
  font-weight: bold;
  color: #FF0084;
}
.pagination a {
  color: #0063DC;
  text-decoration: none;
}
.pagination a:hover, .pagination a:focus {
  text-decoration: underline;
}
.pagination .page_info {
  color: #aaa;
  padding-top: .8em;
}
.pagination .prev_page {
  margin-right: 1em;
}
.pagination .next_page {
  margin-left: 1em;
}

/* message_pagination was pretty plain, so: */
.message_pagination a {
  text-decoration: none;
}
.message_pagination a:hover {
  text-decoration: underline;
  color: rgb(0, 0, 255);
}

/**
* Workflow + Task CSS
**/
ul.workflows {
  list-style: none;
  margin-left: 0;
}

ul.workflows li {
  margin-bottom: 0.5em;
}

div.workflow {
  padding: 0.5em;
  border: 1px solid #efefef;
  border-radius:          .25em;
  -webkit-border-radius:  .25em;
  -moz-border-radius:     .25em;
}

div.workflow:hover {
  background-color: #D4DEEF;
  background-color: rgba(212, 222, 239, 0.25);
  cursor: hand;
  cursor: pointer;
}

div.workflow h5 a {
  text-decoration: none;
  font-weight: bold;
}

div.workflow:hover h5 a,
div.workflow h5 a:hover {
  text-decoration: underline;
}

.tasks {
  margin-bottom: 1em;
}

.tasks div.buttons {
  padding-left: 12em;
}

li.task .button.inline {
  float: none;
  padding: 0.25em;
  padding-right: 0.5em;
  margin-left: 0.5em;
  border-radius:          .75em;
  -webkit-border-radius:  .75em;
  -moz-border-radius:     .75em;
}

li.task .task_metadata {
  padding: 0.25em;
}

li.task .task_instructions {
  width: 75%;
  overflow: auto;
  padding: 0.25em 0 0.25em 1em;
  border-left:    2px solid #eee;
  border-bottom-left-radius:          .75em;
  -moz-border-radius-bottomleft:      .75em;
  -webkit-border-bottom-left-radius:  .75em;
}

form.formtastic fieldset ol li.text textarea#provisioning_task_instructions {
  height: 8em;
}

#workflow_status_messages,
#workflow_state {
  overflow: auto;
  margin-bottom: 1em;
}

#workflow_status_messages strong,
#workflow_state strong {
  display: block;
  float: left;
  padding: 0.25em 0;
  border: 2px solid transparent;
}

#workflow_state span {
  display: block;
  float: left;
  margin-left: 0.5em;
  border: 2px solid transparent;
  padding: 0.25em;
  
  border-radius:         6px;
  -webkit-border-radius: 6px;
  -moz-border-radius:    6px;
}

#workflow_status_messages .current_message {
  clear:left;
  overflow:auto;
  width: 23em;
  padding: 0 1em;
}

#workflow_status_messages .workflow_status_messages {
  clear: left;
  border: 2px solid gray;
  border-color: #eeeeee;
  border-color: rgba(0,0,0,0.05);
  border-radius:          6px;
  -webkit-border-radius:  6px;
  -moz-border-radius:     6px;
  position: absolute;
  top: 8em;
  width: 23.5em;
  padding: 0.5em;
  background: #fff;
}

#workflow_status_messages .workflow_status_messages ol {
  margin-bottom: 0;
  font-size: 0.8em;
}

#workflow_status_messages a {
  overflow: hidden;
}

#workflow_status_list ol {
  list-style: none;
  margin: 0;
  font-size: 0.8em;
}

#workflow_task_list .in_progress {
  color: #007FFF;
  color: rgba(0,127,255,0.9);
}
#workflow_task_list .complete {
  color: #7FC800;
  color: rgba(127,200,0,0.9);
}
#workflow_task_list .blocked {
  color: #FF2300;
}

#workflow_state .pending {
  background-color: #eeeeff;
  background-color: rgba(0,0,255,0.05);
}
table.workflow_table .in_progress,
#workflow_state .in_progress {
  background-color: #ccddff;
  background-color: rgba(0,127,255,0.2);
}
table.workflow_table .complete,
#workflow_state .complete {
  background-color: #BFE480;
  background-color: rgba(127,200,0,0.5);
}
table.workflow_table .overdue,
table.workflow_table .blocked,
#workflow_state .blocked {
  background-color: #FF2300;
  color: #ffffff;
  font-weight: bold;
}

#workflow_comments fieldset ol {
  margin: 0 0 1.5em 0;
}

#workflow_comments fieldset ol li.text textarea {
  height: 8em;
  width: 25em;
}

#quick_workflow_finder {
  float: right;
}

#quick_workflow_finder button {
  padding: 0.5em;
  font-size: 0.5em;
}

#quick_client_chooser select,
#quick_workflow_finder input {
  display: block;
  float: left;
  margin-top: 0.5em;
}

#quick_client_chooser {
  overflow: auto;
  margin: 1em;
}

#quick_client_chooser button:hover {
  text-shadow: none !important;
}

div.giki_contents ul {
    margin-left: 1em;
}