* {
  margin: 0;
  
  font-family: verdana, helvetica, sans-serif;
}

a {
  color: blue;
  text-decoration: none;
}

a:hover {
  color: red;
  text-decoration: underline;
}

fieldset {
  padding: 8px;
  text-align: center;
}

form {
  font-size: 12px;
}

form#login {
  width: 300px;
  margin: 0 auto;
  margin-top: 32px;
}

form#show, form#user-form {
  display: none;
  margin-bottom: 16px;
}

form label {
  display: block;
  width: 100%;
  text-align: right;
}

form label.radio {
  display: inline;
}

form table {
  margin: 0 auto;
}

form td {
  text-align: left;
  vertical-align: middle;
}

form td.multi {
  vertical-align: top;
  padding-top: 4px;
}

form td.buttons {
  text-align: center;
}

form tr.hidden {
  display: none;
}

form tr.shown {
  display: table-row;
}

form tr.error td {
  background-color: #EEE;
}


input {
  margin-left: 2px;
  margin-bottom: 2px;
}

legend {
  padding-left: 5px;
  padding-right: 10px;
  
  font-size: 14px;
  font-weight: bold;
  color: black;
}

p {
  font-size: 12px;
  margin-bottom: 8px;
}

select {
  margin-bottom: 2px;
}

small {
  font-size: 9px;
}

#head {
  position: absolute;
  width: 100%;
  height: 32px;
  
  background-color: #F82; 
}

.error {
  font-weight: bold;
  color: red;
}

#head p {
  margin-bottom: 0px;
  line-height: 32px;
  text-align: center;
  vertical-align: middle;
}

#head a {
  padding-left: 16px;
  padding-right: 16px;
  
  font-size: 16px;
  font-weight: bold;
  color: white;
  text-decoration: none;
}

#head a:hover {
  background-color: white;
  color: #F84;
}

#lhc {
  position: absolute;
  top: 40px;
  width: 250px;
  height: 460px;
  background-color: #EEE;
}

#lhc div.box {
  margin: 2px 8px;
  width: 234px;
  float: left;
  clear: left;
}

#lhc div p {
  padding: 2px;
  font-size: 12px;
}

#calendar table {
  margin-left: 28px;
  float: left;
}

#calendar td, #calendar th {
  width: 18px;
  margin: 2px;
  padding: 2px;
  font-size: 12px;
  text-align: right;
}


#calendar td a {
  color: black;
  border: 1px solid #EEE;
}

#calendar td a:hover {
  text-decoration: none;
  border-color: black;
}

#calendar td a.hilite {
  color: red;
  font-weight: bold;
}


#calendar-month {
  padding: 2px;
  width: 192px;
  text-align: center;
  float: left;
}


#calendar-head {
  padding-left: 0;
  padding-right: 0;
  float: left;
  
  background-color: #00D;
  color: white;
  font-weight: bold;
  font-size: 14px;
  letter-spacing: 2px;
}

.calendar-nav {
  height: 21px;
  float: left;
  padding-left: 2px;
  padding-right: 2px;

  background-color: #444;
  font-size: 14px;
  font-weight: bold;
}

.calendar-nav a {
  color: white;
}

.calendar-nav a:hover {
  color: red;
  text-decoration: none;
}

.enabled {
  color: green;
}

.disabled {
  color: red;
}

#lhc #today {
  margin-bottom: 10px;
  
  font-size: 14px;
  font-weight: bold;
  text-align: center;
}

#main {
  position: absolute;
  top: 40px;
  left: 250px;
  width: 730px;
  height: 460px;
  
  padding: 2px;
  padding-left: 8px;
  
  overflow: auto;
  font-size: 12px;
}

#main h1 {
  margin-bottom: 12px;

  color: #F82;
  font-size: 18px;
  font-weight: bold;
}

#main h2 {
  margin-top: 2px;
  margin-bottom: 2px;
  padding: 2px;
  background-color: #DFF;
  color: black;
  font-size: 14px;
  font-weight: bold;
}

#main h2 a {
  color: black;
}

#main th {
  background-color: #DFF;
  padding: 2px;
  text-align: left;
}

#main th.name {
  width: 150px;
}

#main th.level {
  width: 250px;
}

#main th.status {
  width: 100px;
}

#main th.artist-filter {
  width: 200px;
}

#main th.buttons {
  width: 250px;
}

#main #container table {
  margin-left: 4px;
  border-collapse: collapse;
}

#main #container td {
  font-size: 12px;
  padding: 2px;
}

#main #container tr.alt {
  background-color: #E0E0E0;
}

#main #container td.time {
  width: 80px;
}

#main #container td.artist {
  width: 150px;
}

#main #container td.artist a.confirmed {
  color: red;
}

#main #container td.venue {
  width: 130px;
}

#main #container td.comment {
  width: 130px;
}

#main #container td.actions {
  font-size: 10px;
  width: 220px;
}

#main #container .day {
  margin-bottom: 8px;
}

#search { }

#statusbar {
  position: absolute;
  overflow: hidden;
  bottom: 0;
  width: 100%;
  height: 32px;
  background-color: #22F;
}

#statusbar #status {
  float: left;
  width: 500px;
  margin-left: 12px;
}

#statusbar #status img {
  float: left;
  margin-top: 8px;
  margin-right: 4px;
}

#statusbar #status p {
  float: left;
  line-height: 32px;
  text-align: middle;
  font-size: 12px;
  font-weight: bold;
  color: white;
}


#statusbar #refresh {
  text-align: right;
  margin-top: 4px;
  margin-right: 32px;
}

div.autocomplete {
  position: absolute;
  background-color: white;
  border: 1px solid #888;
}

div.autocomplete ul {
  list-style-type: none;
  padding: 0;
}

div.autocomplete ul li.selected {
  background-color: #FFB;
}

div.autocomplete ul li {
  list-style-type: none;
  display: block;
  padding: 2px;
  cursor: pointer;
}
