
body {
  background-color: #fff;  
  font-family: helvetica, sans-serif;
  margin-left:20px;
  margin-right:20px;
}

body.event_details_body {
  background-color: #fff;  
}

h1 {
  font-weight:bold;
  font-size:large;
}




img {  /* prevents borders around images that are links (whose dumb idea was that anyway?) */
  border-width:0px;
}

a:link { color: #00f; text-decoration: underline}
a:visited { color: #551a8b; text-decoration: underline}
a:hover { color: #0000aa; text-decoration: underline}

#plans_messages {
  display:none;
  float:left;
  border:solid 1px #999;
  background-color:#f8efe7;
  padding:5px;
  margin:5px;
  text-align:left;
}

#logged_in_stuff {
  border:solid 1px #999;
  background-color:#edffed;
  padding:5px;
  margin:5px;
}

#pending_events {
  display:none;
}


/* form stuff*/

form {
  display:inline;
  margin-bottom:0;
  margin-top:0;
}

input {
  margin:2px;
  padding:2px;
}
textarea {
  margin:2px;
  padding:2px;
}
select {
  margin:2px;
}

optgroup {
 color:#888888;
 font-weight:normal;
 font-style:normal;
 font-size:x-small;
}

option {
 color:#000;
 font-weight:normal;
 font-size:small;
}

#login_logout {
  border:solid 1px #ccc;
  background-color:#fff;
  margin:5px;
  padding:5px;
}



.scroll_surround {
  border-style:inset;
  background-color:#fff;   
  border:solid 1px #000;
  padding:5px;
  margin:2px;
  font-size:small; 
  color:#000;
  overflow:auto;           
}

#update_cal_form input {
  margin:5px;
  margin-top:0px;
}
#update_cal_form textarea {
  margin:5px;
  margin-top:0px;
}
#update_cal_form select {
  margin:5px;
  margin-top:0px;
}

#update_cal_form .leftcol {
  clear:left;
  float:left;
  width:35%;
  text-align:right;
}
#update_cal_form .rightcol {
  float:left;
  width:60%;
  text-align:left;
}

#add_event_form .leftcol {
  clear:left;
  float:left;
  width:35%;
  text-align:right;
  margin-bottom:5px;
}

#add_event_form .rightcol {
  float:left;
  width:60%;
  text-align:left;
  margin-bottom:5px;
}

#controls_submit_button {
  border:outset 2px #000;
}
#controls_submit_button.blink {
  border:outset 2px #f00;
  background-color:#f00;
}

#cal_id {
  max-width:20em;
}

.delete_button {
  color:#fff;
  background-color:#990000;
}


/* the dropdownmenu styles are not currently used.  They're reserved for 
javascript dropdown menus, if those ever become a reality */

div.dropdownmenu {
  position:absolute;
  width:165px;
  border-width: 1px;
  border-style: solid;
  border-color: #b2b2b2 #4a494a #4a494a #b2b2b2;
  background-color:#fff;
  line-height:20px;
  cursor:default;
  font-size:14px;
  visibility:hidden;
}

div.dropdown_menuitem {
  padding-left:5px;
  color:#000;
  font-size:14px;
}

div.dropdown_menuitem_highlight {
  padding-left:5px;
  color:#fff;
  background-color:#08246b;
}

/* the contextmenu styles *are* used.  They're for the right-click menus */

div.contextmenu {
  position:absolute;
  width:165px;
  border-width: 1px;
  border-style: solid;
  border-color: #b2b2b2 #4a494a #4a494a #b2b2b2;
  background-color:#d6d3ce;
  line-height:20px;
  cursor:default;
  font-size:14px;
  visibility:hidden;
  text-align:left;
}

div.context_menuitem {
  padding-left:10px;
  font-size:14px;
}

div.context_menuitem_highlight {
  padding-left:10px;
  color:#fff;
  background-color:#08246b;
}

/* styles for the main tabs */

.active_tab {    
  background-color:#fff7de;
  border:solid 1px #f9e8c0;
  padding:5px;
}

.active_tab a {            
  color:#0049ff;          
  font-weight:normal;
  font-size:medium;
}

.inactive_tab {              
  background-color:#ffebc3; 
  border:solid 1px #f3e0bd;
  padding:5px;
}

.inactive_tab a {              
  color:#0049ff;          
  font-weight:normal;
  font-size:medium;
}

.lite_box {
  border:solid 1px #ccc;
  margin:5px;
  padding:5px;
}



.dialog_box {
  border:outset 2px #ccc;
  margin:5px;
  padding:0;
  background-color:#fff;
  position:absolute;
  float:left;
  width:50%;
  z-index:1000000;
}



.dialog_box .header {
  background-color:#ccc;
  padding-top:3px;
  padding-bottom:3px;
  font-weight:bold;
  text-align:center;
  height:20px;
  line-height:20px;
  border-top:solid 1px #fff;
  border-bottom:solid 1px #333;
}

.dialog_box .title {
  display:inline;
}

.dialog_box .close {
  float:right;
  background-color:transparent;
  font-family:helvetica,sans-serif;
  text-decoration:none;
  position:relative;
  padding:3px;
  margin-top:-4px;
  margin-bottom:0;
  height:19px;
  border:0;
  color:#009;
}

.dialog_box .contents {
  padding:5px;
  background-color:#fff;
}



/* info_box is sort of a generic class used in lots of places, usually applied to <div>s */
a.info_box_tab {
  color:#00f;
  border:solid 1px #000;
  background-color:#eeeeee;
  border-bottom-width:0px;
  padding: 2px 1em 2px 1em;
  position: relative;
  margin-left: 2px;
  margin-right: 2px;
  /*top:-1px; */          /* This may be needed to make the info box tabs look perfectly.  Depends on the browser */
  z-index: 100;
  text-decoration:none;
}

a.info_box_tab.active {
  color:#00f;
  padding-top:5px;
  background-color:#fff;
  position:relative;
  z-index: 102;
}

.info_box {                 
  background-color:#fff;   
  padding:5px;
  margin:0px;
  border:solid 1px #000;
  color:#000;             
}

.info_box a {            /* a color that will be visible against the info_box background */
  color:#3266cd;             
}

.info_box a:hover {     
  color:#551a8b;            
}

.info_box a:visited {   
  color:#0000aa;            
}

.calendar_controls {
  background-color:#fff9ea;   
  padding:5px;
  margin:0px;
  border:solid 1px #f9e8c0;
  color:#000;          
  width:90%;
  margin:auto;
  margin-top:5px;
  margin-bottom:5px;
  white-space:nowrap;
  clear:both;
}

/* event_box surrounds each event*/

a.event_box { 
  border-style:solid;
  border-width:1px; 
  border-color:#aaa; 
  padding:3px;
  margin:2px;
  text-align:left;
  color:#3266cd;    
  font-weight:normal;
  font-size:x-small;
  text-decoration:none;
}

.event_time {
  text-decoration:none;
  white-space:nowrap;
}

.event_box:hover {
  color:#0000aa; 
}

.event_box.background {
  border-color:#000; 
}

.list_month_box {
  background-color:#fff;   
  padding:0px;
  margin:0px;
  margin-bottom:1em;
  border-style:solid;         
  border-width:1px;
  border-color:#000;
  color:#0049ff;          
  font-weight:normal;
  font-size:medium;
  text-align:center;
}

.list_cal_box {             
  background-color:#fff;   
  padding:5px;
  margin:5px;
  border-style:solid;         
  border-width:1px;
  border-color:#000;
  color:#000;            
}

.list_cal_box.background{                   /* used for lots of things */
  border-color:#aaa;
}


.help_box {                 
  background-color:#fff;   
  padding:5px;
  margin:5px;
  border-style:solid;         
  border-width:1px;
  border-color:#000;
  color:#000;
  font-size:small;    
}

.help_title {                 
  color:#000;       
  font-weight:bold;
  font-size:small;
}





.error {            /* used for displaying errors */
  color:#f00;
  font-size:small;
}
.warning {          /* used for displaying warnings */
  color:#af0000;
  font-size:small;
}

.highlight {          /* used for highlighting text */
  color:#000;             
  background-color:#fffbba;
}
.required_field {       /* used for required input fields */
  color:#af0000;
  font-weight:bold;
  font-size:small;
}
.optional_field {       /* used for optional input fields */
  color:#000;       
  font-weight:bold;
  font-size:small;
}
.fit_event {   
  color:#000;            /* maroonish red! */
  font-weight:normal;
  font-size:x-small;
}
.small_note {
  color:#000;       
  font-weight:normal;
  font-size:x-small;
}
.small_note a{
  font-weight:normal;
  font-size:x-small;
}
.cal_title {           /* used for calendar title */
  color:#000;          
  font-weight:bold;
  font-size:large;
}

.cal_month_title {    /* used for calendar month title */
  color:#000;          
  font-weight:bold;
  font-size:medium;
}

.date {           /* dates */
  font-weight:normal;
  font-style:normal;
  border:solid 0px #ababab;
  display:inline;
  margin:2px;
  padding:2px;
  padding-left:3px;
  padding-right:3px;
  line-height:30px;
  vertical-align:top;
  color:#666;
  float:left;
}

.date.today {                     /* this can be used to put some image on today's date (like a circle around the date) */
  background-color:#fff;
  display:inline;
  color:#f00;
  font-weight:bold;
}



/* styles for the event details pop-up */

.event_details {         
  background-color:#fff;   
  padding:5px;
  margin:0px;
  border:solid 1px #000;
  color:#000;
  line-height:1em;  /* This fixes the IE-only "peekaboo" bug */
  -moz-border-radius: .75em .75em .75em .75em;
}

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

.event_details .title {
  font-weight:bold;
}


.icon_preview_box {            /* used for day zoom details box (below title) */
  background-color:#fff;   
  padding:3px;
  margin:3px;
  border:solid 1px #000;
}

td.day_names {                /* used for Sunday, Monday, etc.*/
  color:#000;      
  font-weight:bold;
  font-size:small;
  font-style:italic;
  text-align:center;
  background-color:transparent;
  border-style:solid;         
  border-width:0px;
  border-color: #000;    
  margin:0px;
  width:100px;                /* this line makes each calendar cell at least a certain width */
}

.day {               /* used for calendar cells*/
  background-color:#fff;
  border:solid 1px #333;
  padding:0;
  padding-left:2px;
  padding-right:2px;
  width:11%;
  font-size:small;
  font-weight:normal;
  vertical-align:top;
  height:2px;
}

.day.other_month {               /* used for calendar days in months before & after the current month */
  color:#333333;      
  font-size:small;
  background-color:#eeeeee;
}

.day.other_month_multi {         /* used for odd months in multicalendar continuous month display */
  color:#333333;
  background-color:#eeeeee;
}

.day.cell_bottom {               /* used for calendar cell bottoms */
  height: 3px;
  padding: 0;
  margin: 0;
}

.day.spacer {                    /* used for spacers beneath multi-day events */
  height:auto;
}
.day.spacer.bottom {                    /* used for spacers beneath multi-day events */
}

td.today {                          /* used for today's date */
  background-color:#fff;
}

table.calendar {      /* used for invisible tables & divs */
  background-color:transparent;  
  padding:0px;
  margin:0px;
  border:solid 0px #aaa;
  border-collapse:collapse;
  height:100%;
  margin-top:2em;
}

td.event_slot {               /* this surrounds each event box on the calendar */
  border-style:solid;         
  background-color:#fff;
  border-width:0px;
  border-color: #000;
  padding:2px;
  margin:0px;
}

.layout {      /* used for invisible tables & divs */
  background-color:transparent;  
  padding:0px;
  margin:0px;
  border-style:solid;      
  border-width:0px;
  border-color:transparent;  
}

.list_odd {
  background-color:#eee;
}

.list_even {
  background-color:#ccc;
}


/**************** print styles ************************/

@media print {

/* for printing, things should be black & white
   (backgrounds light, text & borders dark.)*/

/* set all fonts to black */
font {
  color:#000 !important;            
}

/* set all links to black */
a:link { color: #000 !important; text-decoration:none;}
a:visited { color: #000 !important; text-decoration:none;}


body {
  background-color: #fff;  
  background-image:none;
}

#plans_links {
  display:none;
}

#tab_menu {
  display:none;
}

.calendar_controls {
  display:none;
}

.prev_next {
  display:none;
} 

}
