/********** GENERAL FORMATTING **********/

* {
   font-family: Optima, Verdana, Helvetica, sans-serif;
}

body {
	background-color: black;
	color: #AAAAAA;
}

/********** LINKS **********/

/* Nonnavigational links, e.g. in text */
a {
   text-decoration: none;
   color: #8EF;
}

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

/* Navigational links not displayed as embedded links */
a.navigation, a.navlink-page {
   text-decoration: none;
   text-align: center;
   color: #AAAAAA;
}

/* ...keyboard-invoked actions highlight like mouseovers... */
a.navigation:hover, a.navigation-simulated-click {
   color: white;
}

/* ...except only actual mouseovers produce underlines */
a.navigation:hover {
   text-decoration: underline;
}

/********** INDEX PAGE **********/

/* Section header */

.index-header {
	font-size: 18pt;
	font-weight: bold;
}

.section-header {
	margin-top: 0.75em;
	font-size: 12pt;
	border-bottom: 1px dotted #AAA;
	padding-bottom: 2px;
	margin-bottom: 10px;
	font-weight: bold;
}

/* Album title */
.album-title {
	font-size: 10pt;
	text-align: left;     /* override navigation-link behavior */
}

/* Album subhead */
.album-subhead {
	font-size: 8pt;
}

/********** ALBUM GRID **********/

td.thumbnail {
	width: 180px;
	height: 180px;
	background-color: black;
	border: 1px solid #444444;
}

/* Thumbnails */
img.index {
   border: 1px dotted #444444;
}

/* Thumbnails, mouseover */
img.index:hover {
   border-color: #FFFFFF;
   border-style: solid;
}

/* Navigation "toolbar" styling */
.toolbar {
   width: 100%;
   border-bottom: 1px dotted #555555;
   margin: 8px 0px 5px 0px;
   padding: 8px 0px 8px 0px;
}

/* Navigation "toolbar" styling, bottom-of-the-page version */
.toolbar-page-bottom {
   width: 100%;
   border-top: 1px dotted #555555;
   margin: 5px 0px 8px 0px;
   padding: 8px 0px 8px 0px;
}

/* Disabled items */
.navigation-disabled {
   color: #555555;
   text-align: center;
}

/* Generic formatting for navigation links */
.navlink-title {
   font-size: 13px;
}

/* Generic formatting for keyboard cues associated with navigation links */
.navlink-keycue {
   font-size: 10px;
   whitespace: nowrap;
}

/* Page-navigation cells, linking to numbered pages or the 'all' page */
.page-cell, .page-cell-selected {
   width: 30px;
   height: 30px;
   text-align: center;
   vertical-align: middle;
   border: 1px solid #666666;
}

/* ...mouseover/simulated mouseover for these cells */
a.navlink-page:hover, a.navlink-page-simulated-click {
   color: white;
   text-decoration: none;
}

/* ...the currently selected of these cells (if any) */
.page-cell-selected {
   border: 1px solid white;
   background-color: #333333;
}

/* ...navigation cells with separators */
td.navigation-cell, td.navigation-cell-first, td.navigation-cell-last {
   padding-left: 10px;
   padding-right: 10px;
   border-right: 1px solid #666666;
   text-align: middle;
}

td.navigation-cell-first {
   padding-left: 0px;
}

td.navigation-cell-last {
   border-right-width: 0;
   padding-right: 0px;
}

/* Album info as listed on a photo page */
.albuminfo {
	padding: 5px 0 0 0;
	margin: 0;
	font-size: 10px;
	border-top: 1px #222222 solid;
}

/* Timestamp at the bottom of some pages */
.timestamp {
   font-size: 8pt;
   color: #555555;
   text-align: right;
   padding-top: 3px;
}

/* Map link */
.maplink {
	font-size: 8pt;
}


/********** MAINT **********/

body.maint {
	font-size: small;
}

body.maint .warning {
	background-color: red;
	color: white;
	font-size: 120%;
	font-weight: bold;
	text-align: center;
	padding: 2px;
	margin: 0px 0px 6px;
}

/* index page */

body.maint .title {
	font-size: x-large;
	font-weight: bold;
	padding-bottom: 10px;
}

body.maint .instructions {
	padding-bottom: 10px;
}

body.maint .view_link {
	border: 1px solid #888888;
	font-size: small;
	font-weight: normal;
}

body.maint .album_table {
	border: 1px solid #888888;
}

body.maint .album_table tr {
	border-collapse: collapse;
}

body.maint .album_table tr.shade {
	background-color: #333333;
}

body.maint .album_table tr td {
	padding: 5px 8px;
	border-bottom: 1px solid #888888;
}

body.maint .album_table tr td.separate_right {
	border-right: 1px solid #555555;
}

body.maint .album_table tr td.separate_left {
	border-left: 1px solid #555555;
}

body.maint .album_table .command {
	font-size: 130%;
	padding: 0px 5px;
}

body.maint .album_table .row_title {
	font-size: 130%;
}

body.maint .album_table .row_title_date {
	font-size: 75%;
}

body.maint .album_table .row_title_urlname {
	text-align: right;
	font-size: 10pt;
	font-family: courier, monospace;
	color: #888888;
}

body.maint .album_table tr td {
	padding: 5px 8px;
	border-bottom: 1px solid #888888;
}

/* album page */

body.maint .photo-table {
	margin-top: 20px;
}

body.maint .photo-table td {
	padding-top: 25px;
	padding-bottom: 25px;
	border-top: 1px solid #555;
}

body.maint .photo-table .maint-subform td {
	padding-top: 0px;
	padding-bottom: 0px;
	border: none;
}

body.maint .photo-table .maint-subform {
	padding-left: 15px;
}

body.maint .photo-table .maint-thumb-img img {
	border: 1px dotted #888;
}

body.maint .photo-table .maint-thumb-dt {
	margin-top: 8px;
	font-size: small;
}

body.maint .photo-table .maint-thumb-id {
	font-family: courier, monospace;
	font-size: 130%;
	text-align: left;
	margin-top: 8px;
}

/* status messages */

body.maint .status-main, body.maint .status-mid, body.maint .status {
	border-bottom: 1px solid #444444;
}

body.maint .status-main {
	font-size: large;
	font-weight: bold;
	padding-top: 15px;
}

body.maint .status-mid {
	font-weight: bold;
	padding-top: 5px;
}

body.maint .status {
	font-size: x-small;
}
