@charset "UTF-8";

/* Reset styles. */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	vertical-align: baseline;
}
/* remember to define focus styles! */
:focus {
	outline: 0;
}
body {
	line-height: 1;
	color: black;
	background: white;
}
ol, ul {
	list-style: none;
}
/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: separate;
	border-spacing: 0;
}
caption, th, td {
	text-align: left;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: "";
}
blockquote, q {
	quotes: "" "";
}



/* General typographics. */

body {
	font-family: Arial, Verdana, sans-serif;
	line-height: 1.25;
	color: #3d3d3d;
}

body, input, textarea, select {  /* input and textarea to get it right in IE. */
  font-size:   12px;
}

h1, h2, h3, h4 {
  font-weight: bold;
}

h1 {
	font-size: 31px;
	line-height: 31px;
	white-space: nowrap;
	text-transform: uppercase;
	float: right;
	padding-left: .6em;
}

h2 {
	font-size: 23px;
	white-space: nowrap;
	margin-bottom: .5em;
}

h3 {
	font-size: 18px;
	margin-top: 1.5em;
	margin-bottom: .5em;
}

h4 {
	font-size: 14px;
  margin-top: .7em;
	margin-bottom: 0.2em;
}

p, .p { 
  margin-top: .7em;
  margin-bottom: .7em;
}

img {
  border: none;
}

hr { margin-bottom: .7em; }

a {
  text-decoration: underline;
  color: #3d3d3d;
}

a:hover {
  color: #476273;
}

strong, .strong { font-weight: bold; }

pre { 
  font-family: Courier;
  margin-top: .7em;
  margin-bottom: .7em;
  font-size: 95%;
  margin-left: 1em;
}

ul.list {
  margin-left: 2.5em;
  list-style-type: disc;
  list-style-position: outside;
  margin-top: .7em;
  margin-bottom: .7em;
}

ol.list {
  margin-left: 2.5em;
  list-style-type: decimal;
  list-style-position: outside;
  margin-top: .7em;
  margin-bottom: .7em;
}

.list li {
  margin-top: .3em;
  margin-bottom: .3em;
}

.dimmed { color: #888888; }

.help { cursor: help; }

.border { border: 1px solid #afafaf;}

.discreet-links a {
  text-decoration: none;
}
.discreet-links a:hover {
  text-decoration: underline;
}

.infobox, .alertbox {
  border: 1px solid #afafaf;
  background: #fff url(../images/alert.gif) no-repeat 11px center;
  padding: 15px;
  padding-left: 66px;
  width: 30em;
  background-color: #f8f8f8;
  min-height: 27px;
  margin: 1em 0;
}

.infobox {
  background-image: url(../images/info2.gif);
}

/* iPhone specific. */

html {-webkit-text-size-adjust: none}

/* Page layout and colors. */

body {
	background-color: #ffffff;
}

#app #main {
	padding: 2px 30px 60px 2px;
	width: 500px;
}

body#outside {
  text-align: center;
}

#outside #main {
	margin: 2px auto;
	padding-bottom: 30px;
  text-align: left;
}

#outside #page {
  padding: 0 48px 30px 48px;
}

#outside h2, #outside h3, #outside h4 {
   color: #476273;
}

#outside h2 {
  font-size: 46px; margin: .7em 0 .15em 0;
}

#outside h3 {
  font-size: 28px; margin: .7em 0 .2em 0;
}

#outside h4 {
  font-size: 16px; margin: .2em 0 0 0;
}

#outside p, #outside .p {
  font-size: 16px;
  margin: 0 0 1em 0;
}

#outside .form .p {
  font-size: 12px;
}

#outside .tagline {
  font-size: 16px;
  margin: 0 0 22px 0;
  font-weight: bold;
}

#outside .caption {
  font-size: 13px;
  font-weight: bold;
}

.main-header {
  background-color: #476273;
  color: #ffffff;
  white-space: nowrap;
  vertical-align: top;
}

.main-header .main-menu {
  float: left;
  padding-top: 22px;
  padding-left: 22px;
  padding-right: 22px;
}

.main-header .login-indicator {
  text-align: right;
  padding: 3px 0 0 0;
}

.main-header .login-indicator a {
  color: #ffffff;
}

#sidebar {
  width: 175px;
  vertical-align: top;
  text-align: center;
  padding-bottom: 40px;
}

.sidebar-divider-simple-top {
  height: 14px;
  background-color: #476273;
}

.sidebar-divider-top {
  height: 14px;
  background-color: #5d8095;
}

.sidebar-divider-bottom {
  height: 14px;
  background-color: #97b6cb;
}

.sidebar-box {
  margin: 2px 0;
  background: #f6f6f6 url(../images/fade-gray.gif) repeat-x top left;
  border: 1px solid #afafaf;
  padding-bottom: 15px;
}

.sidebar-box .calendar-links{
  padding-top: 3px;
  padding-bottom: 15px;
}

.sidebar-box .calendar-link {
  text-align: left;
  padding-left: 20px;
}

.sidebar-box .selected {
  font-weight: bold;
}

.sidebar-box .calendar-link a {
  color: #3d3d3d;
  text-decoration: none;
}

.sidebar-box .calendar-link a:hover {
  text-decoration: underline;
}

.sidebar-box .add-calendar {
  text-align: left;
  padding: 10px 0 10px 20px;
}

#app #page {
  border-left: 1px solid #afafaf;
  border-bottom: 1px solid #afafaf;
  padding-left: 20px;
  padding-bottom: 20px;
}

#min-width {
  min-width: 600px;	
}

.page-margin-left, .page-margin-left div {
  width: 10px;
}

.page-margin-right {
  border-right: 1px solid #afafaf;
}

.page-margin-right, .page-margin-right div{
  width: 20px;
}

.page-margin-right-bottom {
  border-bottom: 1px solid #afafaf;
}

.page-header {
  vertical-align: bottom;
  border-bottom: 2px solid #afafaf;
}

#page-tabs {
  margin-left: 21px;
  margin-bottom: -2px;
	white-space: nowrap;
}

#page-tabs img {
  vertical-align: bottom;
  margin-left: -1px;
}

#page #sub-tabs-menu, #page #sub-tabs-info {
  margin-top: 3px;
  margin-bottom: 10px;
  text-align: left;
}

#page #sub-tabs-info {
  float: right;
}

#page #sub-tabs-menu a, #page #sub-tabs-info a {
  color: #3d3d3d;
  text-decoration: none;
}

#page #sub-tabs-menu a:hover, #page #sub-tabs-info a:hover {
  text-decoration: underline;
}


#footer {
 	margin: .2em 0 0 0;
 	text-align: right;
  font-size: 11px;
}

#footer, #footer a {
  color: #888888;
}


#notice, #error, .error, .notice {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: .7em;
}

#notice, .notice, .green, .green a {
  color: #448844 !important;
}

#error, .error, .red, .red a {
  color: #aa4444 !important;
}

span.required-dot {
  color: #aa4444;
  font-family: "Courier New";
}
/* General table styles. */

table {
  position: relative; /* To avoid bugs when JS-dragging things in IE- */
}

th, td {
	vertical-align: top;
	text-align: left;
}

.standard th, .standard td {
	padding-right: 1em !important;
	white-space: nowrap;
	vertical-align: baseline;
}

.standard th {
  font-weight: bold;
}

tr.odd {
  background-color: #e8e8e8;
}
tr.even {
  background-color: #f8f8f8;
}

/* Types. Order is important. */


.note .highlight {
	background-color: #e9e9e9;
}
.note .over {
	background-color: #d6d6d6;
}

.unavailable .highlight {
	background-color: #d0a0a0;
}
.unavailable .over {
	background-color: #b9908d;
}

.preliminary .highlight {
	background-color: #ececa8;
}
.preliminary .over {
	background-color: #dad598;
}

.definitive .highlight {
	background-color: #c8dcb9;
}
.definitive .over {
	background-color: #b4c3a5;
}

.giglist .highlight {
  border-top: 1px solid white;
}

.giglist .old .highlight {
  color: #777777;
	border-top: 1px solid white;
}

.giglist .old .over {
  color: #222222;
}

/* Calendar list table. */

.giglist {
  margin-top: 15px;
  width: 100px; /* Silly fix to avoid changing width when expanding a gig. */
}

.giglist th, .giglist td {
	padding: 0 .5em;
	white-space: nowrap;
}

.giglist th {
  text-align: left;
	padding-top: 1em;
	vertical-align: baseline;
	border-bottom: 1px solid #3d3d3d;
}

.giglist th.pageheader {
	padding: 0;
	border: none;

}
.giglist th h3 {
  font-size: 15px;
	margin: 0;
	width: 10em;
}

.giglist td.image {
	vertical-align: middle;
	padding: 1px 0 0 2px;
}

.giglist td.icon {
	vertical-align: middle;
	padding: 0 .2em 0 .4em;
}

.giglist td.details {
	border-left: 1px solid #dfdfdf;
	border-right: 1px solid #dfdfdf;
	border-top: 1px solid #afafaf;
	border-bottom: 1px solid #afafaf;
  background: #f8f8f8;
	font-size: 95%;
	white-space: normal;
	padding-left: 2.2em;
	padding-top: .1em;
	padding-bottom: .3em;
}

.giglist tr.recently-updated {
  font-weight: bold;
}

/* Calendar mini table. */

.calendarmini {
  position: absolute;
}

.calendarmini span, .calendarmini th {
  cursor: default; /* Looks silly with the text select cursor in the minicalendar. */
}

.calendarmini th, .calendarmini td {
	padding: 0px 1px 0px 1px;
	text-align: center;
	vertical-align: bottom;
	color: #888888;
	font-size: 90%;
	line-height: 110%;
	font-weight: normal;
}

.calendarmini td a {
	color: #888888;
	text-decoration: none;
	display: block;
	vertical-align: middle;
}

.calendarmini td a:hover {
	color: #aa5500;
}

.calendarmini th {
	border: none;
	color: #476273;
}

.calendarmini .unavailable, .calendarmini .preliminary, .calendarmini .definitive, .calendarmini .note,
.calendarmini .unavailable a, .calendarmini .preliminary a, .calendarmini .definitive a, .calendarmini .note a {
  color: #333333;
}

.calendarmini .over, .calendarmini .over:hover {
  color: #000000;
}

.calendarmini .today, .calendarmini .today a {
	color: #000000;
	font-weight: bold;
}

.calendarmini .weekend {
}

.calendarmini .week {
}

.calendarmini .toprow th {
  padding-top: .3em;
}

.selected {
  font-weight: bold;
}


/* Info-buttons descriptions */

.description-link {
  display: block;
  float: right;
	color: #26589f;
}

.description {
	font-size: 11px;
	color: #476273;
}

.description {
  margin-top: 1em;
  margin-bottom: 1em;
}


/* Forms */

.form {
  background: #f6f6f6 url(../images/fade-gray.gif) repeat-x top left;
	border: 1px solid #afafaf;
}

.form td {
  padding: 1em 1em;
}

.form td td {
  padding: 0;
}

.form .vertical-ruler {
  padding: 0;
  width: 1px;
  background-color: #afafaf;
}

.form .vertical-ruler div {
  width: 1px;
  height: 1em;
  background-color: #eaeaea;
}

.form .horizontal-ruler {
  margin: 1em 0;
  border-bottom: 1px solid #afafaf;
}

.form .label {
  color: #405867;
}

.form input,
.form textarea,
.form select {
  color: #3d3d3d; 
}

.form input.formatted,
.form textarea.formatted {
  border: 1px solid #afafaf;
  background-color: #ffffff;
  padding: .15em .4em;
  margin: .1em 0;
}

.form .setwidth input.formatted,
.form .setwidth textarea.formatted {
  width: 23em;
}

.form .fieldWithErrors input.formatted,
.form .fieldWithErrors textarea.formatted {
  border: 1px solid #aa0000;
}

.form div.formError {
  color: #aa0000;
}

.form .formatted-button {
  background-color: #5c8095;
  border: 1px solid #405867;
  color: #ffffff;
  padding: 1px 4px 0px 4px;
  text-align: center;
  margin-right: .2em;
}


/* Edit form . */

.editForm .formItem {
  padding: .2em .5em 0em .4em;
  margin: 0em -.5em .6em -.5em;
  border: 1px solid #bbbbbb;
  background-color: #e5e5e5;
}

.editForm .formItem:hover {
  border: 1px solid #aaaaaa;
  background-color: #d0d0d0;
}

.editForm .change, .editForm .change:hover {
  border: 1px solid #666666;
  background-color: #ffee99;
}

.editForm .movable {
  padding: .5em 0;  /* Needs some height for empty list to create drop-zone. */
}

.editForm .links {
  text-align: right;
	font-size: 95%;
  margin-top: -.7em;
  margin-bottom: .3em;
  margin-right: .3em;
}

.editForm .movable {
  cursor: move;
}

.admin-popup {
  color: #3d3d3d;
  position: absolute;
  border: 1px solid gray;
  padding: 0em 1.5em 1em 1em;
  font-size: 11px;
  z-index: 10;
}

.admin-popup a {
  color: #3d3d3d;
  font-weight: bold;
  text-decoration: underline;
}
