/*
	Higher-lever CSS declarations and hacks necessary to make pages look
	like they should.
*/             

body {
	margin: 0;
	padding: 10px;
}                   

/* Navigation bar classes */

#h-contain {
	width: 775px;
	/* 
		Causes div to expand to completely enclose floated elements inside.
		
		See: http://www.quirksmode.org/css/clearing.html
	*/
	overflow: hidden;

	padding-bottom: 0px !important;
	padding-bottom: 15px;
}

#f-contain {
	width: 775px;
	border-top: 3px double #ccc;
	padding-top: 5px;
	text-align: right;
}

ul#upper-nav {
   padding: 0;
   margin: 0.7em 0;   
   width: 100%;
   border-top: 1px solid #ccc;
   border-bottom: 1px solid #ccc;
   text-align: center;
}

ul#upper-nav li {
   display: inline;
   padding: 0;
}

/* Padding on 'a' elements are ignored by IE 5 */
ul#upper-nav li a {
	padding: 0px 15px;
}

/*
	Leahy image replacement.
	
	See: http://www.moronicbajebus.com/playground/cssplay/image-replacement/
*/

#h-contain h1 { 
	/*Size of the image*/ 
	padding-top: 121px; 
	width: 630px;
	
	clear: both;
	margin: 0;
	
	/*The image*/ 
	background-image: url(/images/cal-header.png); 
	background-repeat: no-repeat; 
	
	/*Hide the text*/ 
	overflow: hidden;	
	/* WIN IE5 hack */ 
	height: 121px; 
	
	voice-family: "\"}\""; 
	voice-family:inherit; 
	height: 0; 
}

/* Main content container classes */

div#b-contain { min-width: 775px; }

div.two-col-nl #col-1,
div.two-col-nr #col-2,
div.three-col-w #col-1, 
div.three-col-n #col-1,
div.three-col-n #col-3 {
	width: 125px;
}

div.three-col-w #col-2 {	
	width: 373px;
}

div.three-col-w #col-3 {
	width: 235px;
}

div.three-col-n #col-2 {
	width: 483px;
}

div.two-col-nr #col-1,
div.two-col-nl #col-2 {
	width: 623px;
}

div.two-col-w #col-1 {
	width: 450px;
}

div.two-col-w #col-2 {
	width: 298px;
}

div.one-col, #col-across {
	width: 763px;
}

#col-1 {
	padding: 0 7px 0 5px;
	float: left;
}

#col-2, #col-3, #col-across {
	padding: 0 7px;
	float: left;
}

#col-across {
	clear: both;
}

/*
	Site sections
*/
.s-in, blockquote {
	padding-left: .75em !important;
}

.s-break {
	margin-top: 0.85em;
}

.s-alert, .s-alert-top {
	border: 1px solid #ccc;
	background: #efefef;
	margin-bottom: 0.85em;
}

#col-across.s-alert-top {
	border: 0;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}

p.s-alert {
	padding: 0.5em 0.5em 0.8em;
}

.s-feature-pic {
	text-align: center;
	background: #efefef;
	border: 1px solid #ccc;
	
	margin-bottom: 0.85em;
}

.s-feature-pic img {}

.s-feature-pic p {
	text-align: left;
	padding: 0.5em 0.5em 0;
}

/* Table styling */
table.ta-data, 
table.ta-grid, 
table.ta-form {
	border-collapse: collapse;
	width: 100%;
}

table.ta-grid-print tbody td, 
table.ta-grid-print tbody th {
	border: 1px solid #ccc;
	padding: 2px;
}

table.ta-data caption {
	border-bottom: 1px solid #ccc;
	border-top: 1px solid #ccc;
	padding: 2px;
	text-align: left;
}

table.ta-data th {
	text-align: left !important;
}

table.ta-data thead th, td.td-underline {
	border-bottom: 1px solid #ccc;
}

table.ta-data tbody th, table.ta-data tbody td,
table.ta-data tfoot th, table.ta-data tfoot td {
	padding: 5px 3px;
	vertical-align: top;
}

table.ta-data tfoot.total-line td {
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}

tr.row-head th, tr.row-head td {
	font-size: 92%;
	border-top: 2px solid #eee;
	border-bottom: 2px solid #eee;
}

tr.row-divide th, tr.row-divide td {
	border-bottom: 1px solid #999;
}

table.ta-nohead thead, table.ta-nofoot tfoot {
	display: none;
}

table.ta-form th {
	padding-right: 10px;
	vertical-align: top;
	width: 25%;
}

table.ta-form th, table.ta-form td {
	padding-top: 1em;
}

table.ta-form td.button, table.ta-data td.button {
	text-align: right;
}

table.ta-grid td {
	vertical-align: top;
}

/* Form stylings */
input[type=text] + p,
textarea + p,
select + p {
	margin-top: 0.4em;
}

/* Definition list stylings */

dl.std dd,
dl#event-list dd {
	margin-left: 0.5em;
}

/* (Un)ordered lists */

ul.lst-ec {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

ul.lst-ec li {
	padding: 0.25em 0.35em;
}

ul.lst-ec li.ec-success {
	background: #defede;
}

ul.lst-ec li.ec-error {
	background: #fcc;
}

/* General styling classes */
.l-a-right {
	text-align: right;
}

.l-a-left {
	text-align: left;
}

.l-a-center {
	text-align: center;
}

.l-hidden {
	visibility: hidden;
}

.l-block {
	display: block;
}

p.hanging-checkbox {
	margin-left: 1.45em;
}

p.hanging-checkbox input {
	margin-left: -1.5em;
}

/* Upcoming.org event stylings */

dl#event-list .event-title {
	margin-bottom: 0;
}

/* Cleanup event list stylings */
/* div#cleanup-list { margin-bottom: 1.7em; } */
div#cleanup-list table { width: 100%; border-collapse: separate; border-spacing: 0 0.3em; }
div#cleanup-list th { width: 15%; }
div#cleanup-list table, div#cleanup-list p { margin-left: 0.75em; }