/* This is a completely new scheduling style based on absolute positioning */

div.calendar {
  text-align: center;
  width: 95%;
  left: 2.5%;
  border: solid #555 2px;
  padding: 0px;
  margin: 0px;
  height: 357px;  position: relative;
}

div.calendar div.event, div.calendar div.day, div.calendar div.time {
  position: absolute;
}

div.calendar div.event, div.calendar div.day {
  width: 17%;
  text-align: center;
  background: #fff;
}

div.calendar div.event {
  background: #ddf;
  border: 1px solid #000;
  color: #000;
}

div.calendar div.day {
  height: 21px;  background: none;
  text-align: center;
  top: 0px;
}

/* left position of each column type */
div.calendar div.time      { left: 0%;  }
div.calendar div.monday    { left: 10%; }
div.calendar div.tuesday   { left: 28%; }
div.calendar div.wednesday { left: 46%; }
div.calendar div.thursday  { left: 64%; }
div.calendar div.friday    { left: 82%; }

div.calendar div.time {
  width: 99%; /* to make the borders go all the way across */
  padding-left: 1%;
  text-align: left;
  font-size: small;
  border-top: #000 1px dotted;
}

div.calendar div.major { font-weight: bold; border-top: #000 1px solid; }

div.calendar div.start_09_00 { top: 21px; }
div.calendar div.start_09_05 { top: 24px; }
div.calendar div[class~="start_09_05"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (09:05)'; }
div.calendar div.start_09_10 { top: 28px; }
div.calendar div[class~="start_09_10"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (09:10)'; }
div.calendar div.start_09_15 { top: 31px; }
div.calendar div[class~="start_09_15"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (09:15)'; }
div.calendar div.start_09_20 { top: 35px; }
div.calendar div[class~="start_09_20"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (09:20)'; }
div.calendar div.start_09_25 { top: 38px; }
div.calendar div[class~="start_09_25"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (09:25)'; }
div.calendar div.start_09_30 { top: 42px; }
div.calendar div.start_09_35 { top: 45px; }
div.calendar div[class~="start_09_35"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (09:35)'; }
div.calendar div.start_09_40 { top: 49px; }
div.calendar div[class~="start_09_40"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (09:40)'; }
div.calendar div.start_09_45 { top: 52px; }
div.calendar div[class~="start_09_45"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (09:45)'; }
div.calendar div.start_09_50 { top: 56px; }
div.calendar div[class~="start_09_50"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (09:50)'; }
div.calendar div.start_09_55 { top: 59px; }
div.calendar div[class~="start_09_55"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (09:55)'; }
div.calendar div.start_10_00 { top: 62px; }
div.calendar div.start_10_05 { top: 66px; }
div.calendar div[class~="start_10_05"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (10:05)'; }
div.calendar div.start_10_10 { top: 70px; }
div.calendar div[class~="start_10_10"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (10:10)'; }
div.calendar div.start_10_15 { top: 73px; }
div.calendar div[class~="start_10_15"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (10:15)'; }
div.calendar div.start_10_20 { top: 77px; }
div.calendar div[class~="start_10_20"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (10:20)'; }
div.calendar div.start_10_25 { top: 80px; }
div.calendar div[class~="start_10_25"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (10:25)'; }
div.calendar div.start_10_30 { top: 84px; }
div.calendar div.start_10_35 { top: 87px; }
div.calendar div[class~="start_10_35"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (10:35)'; }
div.calendar div.start_10_40 { top: 91px; }
div.calendar div[class~="start_10_40"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (10:40)'; }
div.calendar div.start_10_45 { top: 94px; }
div.calendar div[class~="start_10_45"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (10:45)'; }
div.calendar div.start_10_50 { top: 98px; }
div.calendar div[class~="start_10_50"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (10:50)'; }
div.calendar div.start_10_55 { top: 101px; }
div.calendar div[class~="start_10_55"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (10:55)'; }
div.calendar div.start_11_00 { top: 105px; }
div.calendar div.start_11_05 { top: 108px; }
div.calendar div[class~="start_11_05"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (11:05)'; }
div.calendar div.start_11_10 { top: 112px; }
div.calendar div[class~="start_11_10"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (11:10)'; }
div.calendar div.start_11_15 { top: 115px; }
div.calendar div[class~="start_11_15"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (11:15)'; }
div.calendar div.start_11_20 { top: 118px; }
div.calendar div[class~="start_11_20"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (11:20)'; }
div.calendar div.start_11_25 { top: 122px; }
div.calendar div[class~="start_11_25"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (11:25)'; }
div.calendar div.start_11_30 { top: 125px; }
div.calendar div.start_11_35 { top: 129px; }
div.calendar div[class~="start_11_35"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (11:35)'; }
div.calendar div.start_11_40 { top: 133px; }
div.calendar div[class~="start_11_40"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (11:40)'; }
div.calendar div.start_11_45 { top: 136px; }
div.calendar div[class~="start_11_45"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (11:45)'; }
div.calendar div.start_11_50 { top: 140px; }
div.calendar div[class~="start_11_50"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (11:50)'; }
div.calendar div.start_11_55 { top: 143px; }
div.calendar div[class~="start_11_55"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (11:55)'; }
div.calendar div.start_12_00 { top: 147px; }
div.calendar div.start_12_05 { top: 150px; }
div.calendar div[class~="start_12_05"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (12:05)'; }
div.calendar div.start_12_10 { top: 154px; }
div.calendar div[class~="start_12_10"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (12:10)'; }
div.calendar div.start_12_15 { top: 157px; }
div.calendar div[class~="start_12_15"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (12:15)'; }
div.calendar div.start_12_20 { top: 161px; }
div.calendar div[class~="start_12_20"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (12:20)'; }
div.calendar div.start_12_25 { top: 164px; }
div.calendar div[class~="start_12_25"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (12:25)'; }
div.calendar div.start_12_30 { top: 168px; }
div.calendar div.start_12_35 { top: 171px; }
div.calendar div[class~="start_12_35"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (12:35)'; }
div.calendar div.start_12_40 { top: 175px; }
div.calendar div[class~="start_12_40"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (12:40)'; }
div.calendar div.start_12_45 { top: 178px; }
div.calendar div[class~="start_12_45"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (12:45)'; }
div.calendar div.start_12_50 { top: 182px; }
div.calendar div[class~="start_12_50"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (12:50)'; }
div.calendar div.start_12_55 { top: 185px; }
div.calendar div[class~="start_12_55"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (12:55)'; }
div.calendar div.start_13_00 { top: 189px; }
div.calendar div.start_13_05 { top: 192px; }
div.calendar div[class~="start_13_05"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (13:05)'; }
div.calendar div.start_13_10 { top: 196px; }
div.calendar div[class~="start_13_10"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (13:10)'; }
div.calendar div.start_13_15 { top: 199px; }
div.calendar div[class~="start_13_15"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (13:15)'; }
div.calendar div.start_13_20 { top: 203px; }
div.calendar div[class~="start_13_20"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (13:20)'; }
div.calendar div.start_13_25 { top: 206px; }
div.calendar div[class~="start_13_25"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (13:25)'; }
div.calendar div.start_13_30 { top: 210px; }
div.calendar div.start_13_35 { top: 213px; }
div.calendar div[class~="start_13_35"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (13:35)'; }
div.calendar div.start_13_40 { top: 217px; }
div.calendar div[class~="start_13_40"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (13:40)'; }
div.calendar div.start_13_45 { top: 220px; }
div.calendar div[class~="start_13_45"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (13:45)'; }
div.calendar div.start_13_50 { top: 224px; }
div.calendar div[class~="start_13_50"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (13:50)'; }
div.calendar div.start_13_55 { top: 227px; }
div.calendar div[class~="start_13_55"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (13:55)'; }
div.calendar div.start_14_00 { top: 230px; }
div.calendar div.start_14_05 { top: 234px; }
div.calendar div[class~="start_14_05"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (14:05)'; }
div.calendar div.start_14_10 { top: 237px; }
div.calendar div[class~="start_14_10"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (14:10)'; }
div.calendar div.start_14_15 { top: 241px; }
div.calendar div[class~="start_14_15"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (14:15)'; }
div.calendar div.start_14_20 { top: 244px; }
div.calendar div[class~="start_14_20"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (14:20)'; }
div.calendar div.start_14_25 { top: 248px; }
div.calendar div[class~="start_14_25"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (14:25)'; }
div.calendar div.start_14_30 { top: 251px; }
div.calendar div.start_14_35 { top: 255px; }
div.calendar div[class~="start_14_35"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (14:35)'; }
div.calendar div.start_14_40 { top: 259px; }
div.calendar div[class~="start_14_40"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (14:40)'; }
div.calendar div.start_14_45 { top: 262px; }
div.calendar div[class~="start_14_45"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (14:45)'; }
div.calendar div.start_14_50 { top: 266px; }
div.calendar div[class~="start_14_50"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (14:50)'; }
div.calendar div.start_14_55 { top: 269px; }
div.calendar div[class~="start_14_55"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (14:55)'; }
div.calendar div.start_15_00 { top: 273px; }
div.calendar div.start_15_05 { top: 276px; }
div.calendar div[class~="start_15_05"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (15:05)'; }
div.calendar div.start_15_10 { top: 280px; }
div.calendar div[class~="start_15_10"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (15:10)'; }
div.calendar div.start_15_15 { top: 283px; }
div.calendar div[class~="start_15_15"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (15:15)'; }
div.calendar div.start_15_20 { top: 287px; }
div.calendar div[class~="start_15_20"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (15:20)'; }
div.calendar div.start_15_25 { top: 290px; }
div.calendar div[class~="start_15_25"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (15:25)'; }
div.calendar div.start_15_30 { top: 294px; }
div.calendar div.start_15_35 { top: 297px; }
div.calendar div[class~="start_15_35"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (15:35)'; }
div.calendar div.start_15_40 { top: 301px; }
div.calendar div[class~="start_15_40"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (15:40)'; }
div.calendar div.start_15_45 { top: 304px; }
div.calendar div[class~="start_15_45"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (15:45)'; }
div.calendar div.start_15_50 { top: 308px; }
div.calendar div[class~="start_15_50"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (15:50)'; }
div.calendar div.start_15_55 { top: 311px; }
div.calendar div[class~="start_15_55"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (15:55)'; }
div.calendar div.start_16_00 { top: 315px; }
div.calendar div.start_16_05 { top: 318px; }
div.calendar div[class~="start_16_05"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (16:05)'; }
div.calendar div.start_16_10 { top: 322px; }
div.calendar div[class~="start_16_10"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (16:10)'; }
div.calendar div.start_16_15 { top: 325px; }
div.calendar div[class~="start_16_15"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (16:15)'; }
div.calendar div.start_16_20 { top: 329px; }
div.calendar div[class~="start_16_20"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (16:20)'; }
div.calendar div.start_16_25 { top: 332px; }
div.calendar div[class~="start_16_25"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (16:25)'; }
div.calendar div.start_16_30 { top: 336px; }
div.calendar div.start_16_35 { top: 339px; }
div.calendar div[class~="start_16_35"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (16:35)'; }
div.calendar div.start_16_40 { top: 343px; }
div.calendar div[class~="start_16_40"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (16:40)'; }
div.calendar div.start_16_45 { top: 346px; }
div.calendar div[class~="start_16_45"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (16:45)'; }
div.calendar div.start_16_50 { top: 350px; }
div.calendar div[class~="start_16_50"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (16:50)'; }
div.calendar div.start_16_55 { top: 353px; }
div.calendar div[class~="start_16_55"][class~="event"]:after { font-size: x-small; font-weight: normal; content: ' (16:55)'; }
div.calendar div.length_5_minutes  { height: 1px; }
div.calendar div.length_10_minutes  { height: 5px; }
div.calendar div.length_15_minutes  { height: 8px; }
div.calendar div.length_20_minutes  { height: 12px; }
div.calendar div.length_25_minutes  { height: 15px; }
div.calendar div.length_30_minutes  { height: 19px; }
div.calendar div.length_35_minutes  { height: 22px; }
div.calendar div.length_40_minutes  { height: 26px; }
div.calendar div.length_45_minutes  { height: 29px; }
div.calendar div.length_50_minutes  { height: 33px; }
div.calendar div.length_55_minutes  { height: 36px; }
div.calendar div.length_60_minutes  { height: 40px; }
div.calendar div.length_65_minutes  { height: 43px; }
div.calendar div.length_70_minutes  { height: 47px; }
div.calendar div.length_75_minutes  { height: 50px; }
div.calendar div.length_80_minutes  { height: 54px; }
div.calendar div.length_85_minutes  { height: 57px; }
div.calendar div.length_90_minutes  { height: 60px; }
div.calendar div.length_95_minutes  { height: 64px; }
div.calendar div.length_100_minutes  { height: 68px; }
div.calendar div.length_105_minutes  { height: 71px; }
div.calendar div.length_110_minutes  { height: 75px; }
div.calendar div.length_115_minutes  { height: 78px; }
div.calendar div.length_120_minutes  { height: 82px; }
div.calendar div.length_125_minutes  { height: 85px; }
div.calendar div.length_130_minutes  { height: 89px; }
div.calendar div.length_135_minutes  { height: 92px; }
div.calendar div.length_140_minutes  { height: 96px; }
div.calendar div.length_145_minutes  { height: 99px; }
div.calendar div.length_150_minutes  { height: 103px; }
div.calendar div.length_155_minutes  { height: 106px; }
div.calendar div.length_160_minutes  { height: 110px; }
div.calendar div.length_165_minutes  { height: 113px; }
div.calendar div.length_170_minutes  { height: 116px; }
div.calendar div.length_175_minutes  { height: 120px; }
div.calendar div.length_180_minutes  { height: 123px; }
div.calendar div.length_185_minutes  { height: 127px; }
div.calendar div.length_190_minutes  { height: 131px; }
div.calendar div.length_195_minutes  { height: 134px; }
div.calendar div.length_200_minutes  { height: 138px; }
div.calendar div.length_205_minutes  { height: 141px; }
div.calendar div.length_210_minutes  { height: 145px; }
div.calendar div.length_215_minutes  { height: 148px; }
div.calendar div.length_220_minutes  { height: 152px; }
div.calendar div.length_225_minutes  { height: 155px; }
div.calendar div.length_230_minutes  { height: 159px; }
div.calendar div.length_235_minutes  { height: 162px; }
div.calendar div.length_240_minutes  { height: 166px; }
div.calendar div.length_245_minutes  { height: 169px; }

