table.calendar
{
  width:99%;
  border-width:2px;
  border-style:outset;
  /*border-collapse:collapse;*/
  /*border-color:black;*/
  empty-cells:show;
}
table.calendar td,th
{
  text-align:left;
  border-width:1px;
  border-style:inset;
}
table.calendar td
{
  height:40px;
  vertical-align:top;
  font-size:0.8em;
}
table.calendar th
{
  height:30px;
  vertical-align:middle;
  /*text-shadow:black;*/
}
table.calendar th.cal_month
{
  font-size:larger;
  text-align:center;
  font-stretch:wider;
  font-variant:small-caps;
  letter-spacing:1pt;
}
table.calendar a { font-weight:bold; }

table.calendar table { 
  margin-left:0px; 
  width:100%;
  border-collapse: collapse;
}

table.calendar table.cal_container
{
  height:100%;
  border-style:none;
}

table.calendar table.cal_container tr
{
  height:auto;
  border-style:none;
}
table.calendar table.cal_container td
{
  height:auto;
  border-style:none;
}
table.calendar .cal_container .cal_date
{
  font-size:0.9em;
  min-height:12px;
  /*white-space:nowrap;*/
  padding-left:24px;
  text-indent:-22px;
}
table.calendar .cal_day
{
  font-weight:bold;
}
table.calendar .cal_daytext
{
  font-size:9px;
  border-style:none;
}

table.calendar .cal_today
{
  color: rgb(204, 0, 0); 
  border-color: rgb(204, 0, 0);
  background-color:rgba(204, 0, 0, 0.05);
}
table.calendar .cal_container .cal_event td
{
  border-style:none;
  border-top:1px solid #fefefe;
}
table.calendar .cal_time
{
  font-size:smaller;
  height:12px;
  border-style:none;
  vertical-align:middle;
}
table.calendar .cal_text
{
  font-size:11px;
  height:12px;
  border-style:none;
}

table.calendar .cal_container .cal_hint
{
  position:relative;
  bottom:0;
  font-size:9px;
  padding-top:5px;
  color:#CC0000;
  border-style:none;
  vertical-align:bottom;
  text-align:center;
}

table.calendar td.cal_mo { min-width:50px;  }
table.calendar td.cal_tu { min-width:50px;  }
table.calendar td.cal_di { min-width:50px;  }
table.calendar td.cal_we { min-width:50px;  }
table.calendar td.cal_mi { min-width:50px;  }
table.calendar td.cal_th { min-width:50px;  }
table.calendar td.cal_do { min-width:50px;  }
table.calendar td.cal_fr { min-width:100px; }
table.calendar td.cal_sa { min-width:100px; background-color:rgba(238,221,153,0.3); } /* #eedd99 */
table.calendar td.cal_su { min-width:100px; background-color:rgba(238,221,153,0.3); }
table.calendar td.cal_so { min-width:100px; background-color:rgba(238,221,153,0.3); }
table.calendar td.cal_ph { background-color:rgba(238,221,153,0.3); }
table.calendar td.cal_separator
{
  height:10px; border-width:2px;
  border-style:inset;
}
.cal_typ_nordisch { font-style:italic; color:#882233; }


