

/* IMDC general style sheet */
/* Notes:
 * The implementation of CSS in IE (esp. before IE 7) is quite deficient.
 * IE 5 & 6 do not recognize the ">" selector syntax.
 * Selector Hacks to select specific sets of browsers:
 */
* html             { /* this matches in IE 6 and below */ }
*:first-child+html { /* this matches in IE 7 only */ }
html>body          { /* this matches in IE 7 and non-IE */ }
html>/**/body      { /* this matches in non-IE only */ }
/* The first two can not be combined with comma, because IE 5 & 6 don't grok
 * comma. */

html {
    background: #369;
    color: #000;
}

/* body {font-family: Verdana, Arial, Helvetica; } */
body {
    color: #000;
    background: white;
    background-attachment: fixed;
    font-family: /* Verdana, Arial, */ Helvetica, sans-serif;
    /*font-size: 12px;*/
    /*
    <body leftmargin=0 topmargin=0 marginwidth=0 marginheight=0>
    */
}
@media print { body { font-size: 75%; } }

/* Header stuff */
.imdcheader { background: #369; }

h1 {
    margin: 0;
}

.imdctitle {
    display: -moz-inline-box; /* for firefox, which ignores inline-block */
    display: inline-table;
    display: inline-block;
    margin: 2px 5px;
    vertical-align: middle;
    text-align: center;
}

.imdctitle1 {
    display: block;
    margin: 0;
    /*background: #369;*/
    color: #000;
    font-size: 150%;
    font-weight: bold;
    font-variant: normal;
    font-family: Impact, sans-serif;
}

/* The image itself is a blue cat and black text on a mostly white background.
 * The css background on img and color & font-weight on imdctitle make the
 * alt text's appearance similar to the image. */
.imdctitle1 img {
    border: 0px;
    background: white;
    margin: 0;
    padding: 0px;
}

.imdctitle2 {
    display: block;
    margin: 0;
    color: #FFF;
    font-style: normal;
    font-weight: bold;
    font-family: sans-serif;
    font-weight: bold;
    font-size: 75%; /* relative to the h1 */
}

.imdctitle2.text {
    /*display: block;*/
    /*width: 24ex;*/ /* This works in IE, but not Firefox */
}

.imdcsubtitle {
    display: none;
    color: #F88;
    font-size: 75%; /* relative to the h1 */
    font-weight: bold;
    font-style: italic;
    font-family: sans-serif;
}


/* site navigation buttons */
@media print { .imdcbuttons { display: none; } }
.imdcbuttons {
    clear: both;
    float: left;
    /*background: #9CF;*/
    color: white;
    font-weight: bold;
}

.imdcbuttons a {
    font-weight: bold;
    color: white;
    padding: .25em;
    width: 100%;
    height: 100%;
}

.imdcbuttons A:visited { text-decoration: none; color: white; }
.imdcbuttons A:link    { text-decoration: none; color: white; }
.imdcbuttons A:hover { /* :hover must come after :visited and :link */
    text-decoration: none;
    color: #800;
    background: #BDF;
}
.imdcbuttons A:active { text-decoration: underline; }

.menutab {
    position: relative; /* needed in IE for the ul's position */
    float: left; /* needed in Safari so the ul doesn't get clipped (?!) */
    z-index: 9; /* needed in IE to make the ul in front of roadmap_image */
}
.menutab ul {
    padding: 0;
    margin: 0;
    list-style: none;
}
.menutab ul {
    display: none;
    position: absolute;
    border: 1px solid #369; /* dark border around entire dropdown */
    top: auto; left: auto; /* works in everything except IE */
    z-index: 9; /* in front of everything */
    white-space: nowrap;
}
*:first-child+html .menutab ul { /* IE 7 only */
    top: 100%; left: 0;
}

.menutab:hover > a     { background: #79B; }
.menutab:hover a:hover { background: #BDF; }

.menutab:hover ul { display: block; } /* doesn't work in IE 5 & 6 */
/* To make the dropdown menus work in IE 5 & 6, we'd need javascript
 * to {add,remove} the "hover" class onmouse{over,out}, and the following
 * CSS.  But IE 5 & 6 also have other problems.
.hover ul { display: block; }
*/

.menutab li {
    background: #369;
    margin: 0;
    padding: 0;
    border: 1px solid #BDF; /* light border around each item in dropdown */
    border-top: 0px; /* avoid double borders */
}
.menutab li:first-child {
    border-top: 1px solid #BDF; /* only the first li gets a top border */
}
.menutab li a {
    width: 100%;
    height: 100%;
    padding: 0; /* any padding here will make IE lose the hover */
    display: block;
    font-weight: normal;
}

/* you {are,are not} logged in, etc */
@media print { .imdcstatus { display: none; } }
div.imdcstatus {
    float: right;
    text-align: right;
    /*background: #9CF;*/
    color: white;
    padding: .25em;
    white-space: nowrap; /* for IE */
}

.imdcstatus A { padding-left: .25em; padding-right: .25em; }
.imdcstatus A:visited { color: white; }
.imdcstatus A:link    { color: white; }
.imdcstatus A:hover { /* :hover must come after :visited and :link */
    color: #800;
    background: #BDF;
}
.imdcstatus A:active { text-decoration: underline; }
.imdcstatus A.attention { background: #F00; }
.imdcstatus A.attention:hover { background: #FAA; }

@media print { #wantJsCss { display: none; } }

@media print { #contactUs { display: none; } }
#contactUs {
    /* note: whole block must be shorter than imdccontent's top margin */
    padding: .25em;
    float: right;
    position: relative; /* needed for z-index */
    z-index: 2; /* above roadmap_image */
}

#timezones { border-collapse: collapse; border: 1px solid gray; }
#timezones tbody { border: 1px solid gray; }
#timezones td, #timezones th { border-left: 1px solid gray; border-right: 1px solid gray; }
#timezones tr.offsetrow td { border-top: 1px solid gray; }
#timezones tr.dstrow td { border-top: 1px dotted gray; }
#timezones .offset1       { background: #FFF0F0; }
#timezones .offset1 .dst0 { background: #FFF0F8; }
#timezones .offset1 .dst1 { background: #FFF8F0; }
#timezones .offset1 .dst2 { background: #FFF0F0; }
#timezones .offset0       { background: #F0FFFF; }
#timezones .offset0 .dst0 { background: #F0F8FF; }
#timezones .offset0 .dst1 { background: #F0FFF0; }
#timezones .offset0 .dst2 { background: #F0FFFF; }

/* roadmap, using "cover-up method" to replace html text with an image.
 * Base version is styled text in colored rectangles.  An image version is
 * implemented as a background image in a box layered above the text; if the
 * image fails to appear for any reason, the text is still visible.
 * (see http://www.stopdesign.com/articles/replace_text/, "Cover-up Method")
 */
@media print { #roadmap { display: none; } }
#roadmap {
    margin: 1ex;
    margin-bottom: -1em; /* because imdcbody's top margin is too wide */
}
.roadmap_label {
    float: left; /* appear to the left of roadmap_container */
    position: relative;
    top: 7px; /* align vertically with roadmap_text */
    margin-right: 1ex;
}
.roadmap_container {
    display: block; /* needed for overflow:hidden */
    position: relative;
    left: 0; top: 0;
    padding: 0;
    width: 500px; height: 45px; /* image size */
    overflow: hidden; /* prevent text from peeking out from under image */
    margin-top: .5ex;
}
.roadmap_image {
    position: absolute;
    left: 0; top: 0;
    z-index: 1;
    width: 500px; height: 45px; /* image size */
    background-position: left top;
    background-repeat: no-repeat;
    margin: 0;
    padding: 0;
}
.roadmap_text {
    position: relative;
    top: 7px; /* compensate for padding+borders on items */
    font-size: 80%;
}
#roadmap span.item {
    position: relative;
    margin: 0;
    padding: 3px 1px;
    border-width: 1px;
    border-style: solid;
}
#roadmap span.other_item {
    font-weight: normal;
    border-color: #888; /* dark gray (same as image) */
    background: #DDD; /* light gray (same as image) */
    color: #000; /* black (same as image) */
}
#roadmap span.current_item {
    font-weight: bold;
    border-color: #369; /* datcat blue (same as image) */
    background: #59C; /* a lightened datcat blue (same as image) */
    color: #FFF; /* white (same as image) */
}


/* end roadmap */


div.imdcclear {
    clear: both; /* note: for this to work, something must be visible */
    border-top: 1px solid #123; /* make this visible, for clear */
    margin: 0px;
    padding: 0px;
}

div.imdccontent {
    /* do NOT add "background" here: at least some versions of IE will clobber
     * the text with this background color. */
    border: 2px solid #123; /* thin */
    border-top: 1px solid #123; /* imdcclear already drew 1px */
    border-bottom: 1em solid #123; /* thick */
}

div.imdcbody {
    /* do NOT add "background" here: at least some versions of IE will clobber
     * the text with this background color. */
    margin: 2em; /* note: when imdcbody follows a #roadmap, the roadmap's
                  * bottom margin will partially cancel imdcbody's top margin */
}

div.imdctrailer {
    border-bottom: 1px dotted white; /* I don't know why, but this eliminates unwanted space after the techtrivia and colophon floats in IE */
    clear: both; /* so trailer appears _after_ any floats in body */
}

#home_bottom_section {
    display: table;
    width: 100%;
}

#home_bottom_section div.bottom {
    display: table-cell;
    margin: 2px;
}

#sponsors {
    text-align: right;
}

#sponsors img {
    vertical-align: middle;
}

#sponsors ul {
    margin-left: 0px; /* no indentation */
    padding-left: 0px; /* no indentation */
    list-style: none; /* no bullets */
}

hr { clear: both; }

#techtrivia {
    float: left;
    font-size: 75%;
    margin: 2px;
}

#colophon {
    float: right;
    margin: 2px;
}

.imdcbanner {
    clear: both; /* so closing banner appears after floats */
    width: 100%;
    height: 0em;
}


h1 { }

h2 {
    color: #800;
    /*margin-left: -3%;*/ /* IE chops off left side, so we just skip this. */
}

/* Note: IE chops off the left side of a negative margin in a table */
table h2 { margin-left: 0%; }

h3 {
    vertical-align: bottom;
    clear: left;
}

/* If a pre element inside a contributor-defined markup would overflow its box,
 * make it scrollable instead.  Note that a pre element is the only element
 * that is likely to overflow, because browsers will wrap everything else.
 * We want to minimize use of this technique because of bugs in some browsers:
 * Mozilla:  mozilla is too aggressive at putting auto-scrollbars on <li>
 *     elements, and ends up obscuring part of the text that wouldn't have
 *     overflowed anyway
 * Mozilla, in some situations, with overflow:auto, may go into an infinite
 *     loop; with overflow:scroll it does not.
 * Safari (and probably anything built on KHTML) adds scrollbars, but doesn't
 *     actually make the region any narrower.
 */
div.markup pre.tooWide {
    overflow: scroll;
    border: 1px dotted #888;
    background: #F8F8F8;
    /*max-height: 100ex;*/
    padding: 1em;
}

div.markup img {
}

/* body { background: #E0FFE0; } */

/* these are useful for debugging  *//*
body { background: #C0FFC0; }
form { background: #C0C0FF; }
table.main { background: #FFE080; }
table#searchform { background: #FFFF80; }
table.results { background: #FFE0FF; }
div.details { background: #E0E0E0; }
table.detail { background: #FFE0E0; }
table.annotations { background: #E0FFE0; }
table.recorddetails { background: #E0E0FF; }
table.detailbuttons { background: #E0FFFF; }
table.moreinfo { background: red; }
table.moreinfo td { background: #FF80FF; }
h3 { background: #FFFFC0; }
/**/

/* General style */

/* A elements. */
/* note, :hover must come after :visited and :link */
A:visited   {color: #808}
A           {color: #008; text-decoration: underline; cursor: pointer; }
A.staged:visited            {color: #666}
A.staged:link               {color: #666}
A:hover, A.staged:hover     {background-color: #FF8}
A:active, A.staged:active   {color: #800}

/* link from object's name to its Detail page */
A.detail { /* font-weight: bold; */ }
/*A.detail:after { content: url("images/detail.png"); }*/ /*doesn't work in IE*/

/* link to a search result page */
A.search { /*font-weight: bold; */}
A.search:after { content: url("images/search.png"); } /* doesn't work in IE */
A.search:visited { color: #008; }

/* link to a page within IMDC */
A.internal { }
A.internal:after { }

/* help link */
A.help { }
A.help:hover { cursor: help; }
/*A.help:after { content: url("images/help.png"); }*/ /* too frequent on help
pages */

/* mailto: link */
A.mail { }
A.mail:after { content: url("images/mail.png"); } /* doesn't work in IE */

/* link to an external page */
A.external { }
A.external:after { content: url("images/external_arrow.png"); } /* doesn't work in IE */

/*
A:visited.detail {color: #880}
A:link.detail    {color: #080}
A:hover.detail   {color: #F00}
A:active.detail  {color: #800}
*/


/* specify pairs of quotes */
/* q { quotes: "\201C" "\201D"  "\201A" "\201B"; } *//* not recognized by IE */

img {
    border: 0px;
}

/*.subsection { height: 3em; }*/

/* left-align <th> inside a <tr class=left> (not all <th>, because that would
 * also affect <th> inside a contributor's markup) */
tr.left th {
    text-align: left;
}

th, td {
    vertical-align: top;
}

.welcome {
    font-weight: bold;
}
.welcome sup {
    font-weight: normal;
    font-size: 50%;
}

.sitename {
    font-weight: bold;
}

.hanging {
    margin-left: 5ex;  /* "hanging" paragraph:  indent all lines */
    text-indent: -5ex;  /* ...except the first */
}

.hangtop {
    margin-left: -5ex;  /* ...except the first */
}

.indent {
    margin-left: 2ex;
}

.note {
    font-style: italic;
}

.instructions {
    font-size: 80%;
}

.namesuffix {
    font-style: italic;
    font-size: 75%;
    color: #A40;
}

.citation-instructions .optional {
    color: green;
    font-weight: bold;
}
.citation-instructions .needEdit {
    color: red;
    font-weight: bold;
}
.citation {
    font-family: monospace;
    /*font-weight: bold;*/
    margin-left: 4ex;
}
.citation .optional {
    color: green;
    font-weight: normal;
}
.citation .needEdit {
    color: red;
}
.citation b {
    font-weight: normal;
}

.good   { color: #080; }
.bad    { color: #800; }

/* object state / location status / login status */
.ee_active   { font-weight: bold; color: #080; }
.ee_staged   { font-weight: bold; color: #C00; }
.ee_defunct  { font-weight: bold; color: #C00; }
.ee_disabled { font-weight: bold; color: #C00; }
.ee_pending  { font-weight: bold; color: #C00; }
.ee_locked   { font-weight: bold; color: #C00; }

/* availability */
.ee_free       { font-weight: bold; color: #080; }
.ee_restricted { font-weight: bold; color: #C00; }

#progress {
    font-weight: bold;
}

/*fieldset { border:none; margin:0px; padding:0px; }*/
input[type=text], input[type=password], input[type=file], textarea, select {
    background: #F8F8F8;
    border-color: #BBBBBB;
}
select.operator { font-size: 75%; }
input[type=text][disabled], input[type=password][disabled], input[type=file][disabled], textarea[disabled], select[disabled] {
    background: #DDD;
}
input.text { font-family: monospace; }
input.numeric { font-family: monospace; }
.counter { font-size: 80%; }
.numeric { text-align: right }
.numeric { white-space: nowrap; } /* 1000's separator */
/* Insert a thin space. This does not work in all browsers (notably IE),
 * but when it fails, it's harmless. */
.numeric span:after { content: " "; font-size: 50%; } /* 1000's separator */

.daterange {
}

/* Insert a zero-width (or very very small) space, to act as a line break
 * opportunity without a visible space.  This does not work in non-CSS browsers
 * or in IE (which does not implement :after).  For IE, we also include a
 * <wbr>, but inside an IE conditional comment where it won't affect other
 * browsers or cause validation errors.
 * When this combined methods fails to allow a break, it at least has no bad
 * effects, unlike other possibile solutions:
 * 1) include &#x200B; (ZERO WIDTH SPACE) in the HTML:  some browsers render
 *    it as "?", "&#x200B", or a box.  IE will render it incorrectly in most
 *    fonts, although "Arial Unicode MS" and "Lucida Sans Unicode" will work.
 * 2) including a space in the HTML, with "word-spacing: -1ex; font-size: 1%;"
 *    in CSS:  this would allow wrapping in all browsers, but would also
 *    render an undesired space in browsers without CSS support.
 * 3) include a "<wbr>" element in the HTML: this would violate the HTML spec,
 *    and does not work (nor have any visible bad effects) in Safari or Opera.
 */
.allowbreak:after { content: " "; word-spacing: -1ex; font-size: 1%; }

/*** object type themes ***/

.theme_collection {
    background: #AFF;
    border-color: #006f99;
}
.themedlist li.theme_collection {
    color: #006f99;
}

.theme_coll_pub {
    background: #c4f7ff;
    border-color: #006f99;
}
.themedlist li.theme_coll_pub {
    color: #006f99;
}

.theme_publication {
    background: #DEF;
    border-color: #006f99;
}
.themedlist li.theme_publication {
    color: #006f99;
}

.theme_data {
    background: #CFC;
    border-color: #080;
}
.themedlist li.theme_data {
    color: #080;
}

.theme_package {
    background: #FCC;
    border-color: #900;
}
.themedlist li.theme_package {
    color: #900;
}

.theme_contact {
    background: #EDF;
    border-color: #408;
}
.themedlist li.theme_contact {
    color: #408;
}

.theme_dformat {
    background: #DF8;
    border-color: #790;
}
.themedlist li.theme_dformat {
    color: #790;
}

.theme_pformat {
    background: #FD8;
    border-color: #B80;
}
.themedlist li.theme_pformat {
    color: #B80;
}

.theme_location {
    background: #FDE;
    border-color: #804;
}
.themedlist li.theme_location {
    color: #804;
}

.theme_annkey {
    background: #DDD;
    border-color: #888;
}
.themedlist li.theme_annkey {
    color: #888;
}

.theme_annotation {
    background: #DDD;
    border-color: #888;
}
.themedlist li.theme_annotation {
    color: #888;
}


/* Themed list */
.themedlist {
    list-style: disc inside;
    margin-left: 0px; /* no indentation */
    padding-left: 0px; /* no indentation */
}
.themedlist li { background: transparent; font-size: 125%; } /* big bullet... */
.themedlist li a { font-size: 80%; } /* ...but normal-sized text. */

/* form button that doesn't look like a button */
.nobutton {
    background: transparent;
    border: 0;
    padding: 0;
    margin: 0;
    font-size: 100%;
    font-weight: bold;
    font-family: /* Verdana, Arial, */ Helvetica, sans-serif;
    text-decoration: none;
    color: blue;
}
.nobutton:hover { /* IE<7 doesn't recognize :hover on anything other than <a> */
    font-size: 100%;
    font-weight: bold;
    font-family: /* Verdana, Arial, */ Helvetica, sans-serif;
    text-decoration: underline;
    color: #800;
    background-color: #FF8;
    cursor: pointer;
}

@media print { .pagetable { display: none; } }
.pagetable .prev { vertical-align: top; }
.pagetable .next { vertical-align: bottom; }

.pagetable input.farpage {
    font-size: 80%;
}

.pagetable input.farpage:hover {
    font-size: 80%;
}

.required {
    font-weight: bold;
    font-family: fixed;
    color: red;
}


table.news th { white-space: nowrap; } /* prevent IE from wrapping on "-" */
dl.news dt {
    font-weight: bold;
}

/* Stop button */
.stop {
    background: red;
    border-color: red;
    color: white;
    font-weight: bold;
}

#annotationLegend {
    width: 100%;
    text-align: right;
    margin: .5ex;
}
.browse_collections #annotationLegend {
    text-align: left; /* overrides plain #annotationLegend */
}

@media print { .nav { display: none; } }

@media print { .interactive { display: none; } }

@media print { #selectionOperations { display: none; } }
#selectionOperations {
    margin: .5ex;
}

.searchcriteria ul {
    padding-top: 0;
    margin-top: 0;
}

/* search result Operations list */
@media print { .operations { display: none; } }
ul.operations {
    margin-left: 0px; /* no indentation */
    padding-left: 0px; /* no indentation */
    list-style: none; /* no bullets */
}
ul.operations li {
    display: inline; /* all on one line */
}

/* Detail "Jump to" list */
.jumpto a {
    margin-left: .5ex;
    margin-right: .5ex;
}

/* Detail Operations list */
@media print { .detailops { display: none; } }
ul.detailops {
    padding-left: 0;
    margin-left: 0;
}
ul.detailops li {
    padding-bottom: 1ex;
    display: block;
    float: left;
    margin-left: 0;
    padding-right: 1em;
    padding-left: 0;
}

/* Error list */
ul.actionErrors > li {
    padding-bottom: 1ex;
}

.actionErrorHeader {
    background: yellow;
}

.errorLocation {
    background: white;
}

/* Error correction list */
ul.correctionlist {
    list-style-type: none;
}
ul.correctionlist li {
    margin-left: 2ex;  /* "hanging" paragraph:  indent all lines */
    text-indent: -2ex;  /* ...except the first */
}

/* New User Form */
table.objform tr {
    background: #DDD;
}
table.objform tr.buttons {
    background: white;
}

/* Login form */
table.loginform {
    margin: auto; /* center (broken in IE5, and workaround is too fragile) */
    text-align: left;
}

.searchtypes {
    margin: auto; /* center (broken in IE5, and workaround is too fragile) */
}
.shrinkbox {
    text-align: left;
}

/* Search Results and Detail pages */

tr.resultentry { /* a primary row in search results table */
    /*background: #CEC;*/
}

tr.tableheader {
    background: #DDD;
    font-weight: bold;
}

tr.rowA td {
    background: #EEE;
}

tr.rowB td {
    background: #DDD;
}

@media print { .selectColumn input { display: none; } }
.selectColumn { padding-left: 0px; padding-right: 0px; }
.moreinfoColumn { padding-left: 0px; padding-right: 0px; }

.moreinfo table { /* moreinfo data within result table */
    border-collapse: collapse;
    width: 100%;
    margin: 0px;
    padding: 0px;
    border: 0px;
}

.moreinfo table tr { /* moreinfo data within result table */
    margin: 0px;
    padding: 0px;
    border: 0px;
}

.moreinfo table tr td { /* moreinfo data within result table */
    margin: 0px;
    padding: 0px;
    border: 0px;
}

ul.compact {
    margin-top: 0;
    list-style-position: inside;
    margin-left: 0px; /* no indentation */
    padding-left: 0px; /* no indentation */
}

.small {
    font-size: 80%;
}
.label { /* field labels */
    color: #A40;
}
.label:after {
    /* content: ":"; */
}

.title {
    color: #000;
    font-size: 150%;
    font-weight: bold;
    width: 100%;
}
.title table {
    border-collapse: collapse;
}
.title table td {
    padding: 3px;
    margin: 0;
}
.title .text { vertical-align: top; }
.title .icons { vertical-align: top; text-align: right; white-space: pre; }
.subtitle {
    font-size: 67%; /* undo the 150% in .title */
    color: #000;
    font-weight: bold;
    padding: 3px;
}


h2.theme_collection {
    border-color: #006f99;
    border-width: 1px;
    border-style: solid;
}

h2.theme_coll_pub {
    border-color: #006f99;
    border-width: 1px;
    border-style: solid;
}

h2.theme_publication {
    border-color: #006f99;
    border-width: 1px;
    border-style: solid;
}

h2.theme_data {
    border-color: #080;
    border-width: 1px;
    border-style: solid;
}

h2.theme_package {
    border-color: #900;
    border-width: 1px;
    border-style: solid;
}

h2.theme_contact {
    border-color: #408;
    border-width: 1px;
    border-style: solid;
}

h2.theme_dformat {
    border-color: #790;
    border-width: 1px;
    border-style: solid;
}

h2.theme_pformat {
    border-color: #B80;
    border-width: 1px;
    border-style: solid;
}

h2.theme_location {
    border-color: #804;
    border-width: 1px;
    border-style: solid;
}

h2.theme_annkey {
    border-color: #888;
    border-width: 1px;
    border-style: solid;
}

h2.theme_annotation {
    border-color: #888;
    border-width: 1px;
    border-style: solid;
}



/* Statistics table */
table#statistics {
    border-collapse: collapse;
    /*border: 1px solid #000;*/
}
table#statistics th, table#statistics td {
    border: 1px solid #000;
    padding: 3px;
    background: #EEE;
}
table#statistics td.value {
    text-align: right;
    /*border-left: 0px;*/
    /*border-right: 0px;*/
}

/* Private ID table */
table.privateIds td { background: #DDD; }

/* Annotations (on details page) */
table.annotations {
    border-collapse: collapse;
    border: 2px solid white;
}
table.annotations td {
    /*padding: 2px;*/
    border: 2px solid white;
}

.ann_imdc_std { }
.ann_fmt_std { color: #790; }
.ann_custom { color: #408; }

/* Search results table
 * The coloration of the borders is very tricky to get right in all browsers.
 * If you edit the code below, you MUST test in at least Firefox, Mozilla,
 * and IE.
 * 
 * Note: by the CSS standard, the wider border wins in border-collapse; 
 * but in IE, apparently td always wins over tr.
 */

table.results {
    /* border-color comes from theme */
    width: 100%;
    border-collapse: collapse;
    /* This is the only way in IE to make the table left/right/bottom borders
     * without putting explicit ids or classes on left/right/bottom cells.
     * Unfortunately, it also adds left/right/top borders to the thead, which
     * we won't be able to override in IE.
     * Apparently, IE's border precedence is:  table, cell, row. */
    border-width: 2px;
    border-style: solid;
}

tbody.results {
    page-break-inside: avoid; /* maybe someday browsers will honor this */
}

table.results * tr.resultentry {
    border-width: 1px 1px 1px 1px;
    border-style: solid;
}

table.results * tr.resultheader {
    border-top-style: hidden;
    border-left-style: hidden;
    border-right-style: hidden;
    border-bottom: 2px solid;
}

/* Note: IE does not grok multiple classes, e.g. "table.results.theme_data". */

table.theme_collection * tr.resultheader {
    border-bottom-color: #006f99;
}
table.theme_collection * tr.resultentry td {
    border-top: 1px solid #006f99;
    border-bottom: 1px solid #006f99;
}
table.results tr.resultentry.theme_collection:hover {
    background: #9EE;
}
table.results tr.resultentry:hover td.theme_collection {
    background: #9EE;
}

table.theme_coll_pub * tr.resultheader {
    border-bottom-color: #006f99;
}
table.theme_coll_pub * tr.resultentry td {
    border-top: 1px solid #006f99;
    border-bottom: 1px solid #006f99;
}
table.results tr.resultentry.theme_coll_pub:hover {
    background: #b3e6ee;
}
table.results tr.resultentry:hover td.theme_coll_pub {
    background: #b3e6ee;
}

table.theme_publication * tr.resultheader {
    border-bottom-color: #006f99;
}
table.theme_publication * tr.resultentry td {
    border-top: 1px solid #006f99;
    border-bottom: 1px solid #006f99;
}
table.results tr.resultentry.theme_publication:hover {
    background: #CDE;
}
table.results tr.resultentry:hover td.theme_publication {
    background: #CDE;
}

table.theme_data * tr.resultheader {
    border-bottom-color: #080;
}
table.theme_data * tr.resultentry td {
    border-top: 1px solid #080;
    border-bottom: 1px solid #080;
}
table.results tr.resultentry.theme_data:hover {
    background: #BEB;
}
table.results tr.resultentry:hover td.theme_data {
    background: #BEB;
}

table.theme_package * tr.resultheader {
    border-bottom-color: #900;
}
table.theme_package * tr.resultentry td {
    border-top: 1px solid #900;
    border-bottom: 1px solid #900;
}
table.results tr.resultentry.theme_package:hover {
    background: #EBB;
}
table.results tr.resultentry:hover td.theme_package {
    background: #EBB;
}

table.theme_contact * tr.resultheader {
    border-bottom-color: #408;
}
table.theme_contact * tr.resultentry td {
    border-top: 1px solid #408;
    border-bottom: 1px solid #408;
}
table.results tr.resultentry.theme_contact:hover {
    background: #DCE;
}
table.results tr.resultentry:hover td.theme_contact {
    background: #DCE;
}

table.theme_dformat * tr.resultheader {
    border-bottom-color: #790;
}
table.theme_dformat * tr.resultentry td {
    border-top: 1px solid #790;
    border-bottom: 1px solid #790;
}
table.results tr.resultentry.theme_dformat:hover {
    background: #CE7;
}
table.results tr.resultentry:hover td.theme_dformat {
    background: #CE7;
}

table.theme_pformat * tr.resultheader {
    border-bottom-color: #B80;
}
table.theme_pformat * tr.resultentry td {
    border-top: 1px solid #B80;
    border-bottom: 1px solid #B80;
}
table.results tr.resultentry.theme_pformat:hover {
    background: #EC7;
}
table.results tr.resultentry:hover td.theme_pformat {
    background: #EC7;
}

table.theme_location * tr.resultheader {
    border-bottom-color: #804;
}
table.theme_location * tr.resultentry td {
    border-top: 1px solid #804;
    border-bottom: 1px solid #804;
}
table.results tr.resultentry.theme_location:hover {
    background: #ECD;
}
table.results tr.resultentry:hover td.theme_location {
    background: #ECD;
}

table.theme_annkey * tr.resultheader {
    border-bottom-color: #888;
}
table.theme_annkey * tr.resultentry td {
    border-top: 1px solid #888;
    border-bottom: 1px solid #888;
}
table.results tr.resultentry.theme_annkey:hover {
    background: #CCC;
}
table.results tr.resultentry:hover td.theme_annkey {
    background: #CCC;
}

table.theme_annotation * tr.resultheader {
    border-bottom-color: #888;
}
table.theme_annotation * tr.resultentry td {
    border-top: 1px solid #888;
    border-bottom: 1px solid #888;
}
table.results tr.resultentry.theme_annotation:hover {
    background: #CCC;
}
table.results tr.resultentry:hover td.theme_annotation {
    background: #CCC;
}


table.results tr.moreinfo {
    /* border-color comes from theme */
    background: white;
    border-width: 1px 0 0 0;
    border-style: solid;
    border-top: hidden; /* overrides bottom of row above (doesn't work in IE) */
}
*:first-child+html  table.results * tr.moreinfo td { /* Hack: IE 7 only */
    border-top: 3px solid white; /* override bottom of row above */
}
* html  table.results * tr.moreinfo td { /* Hack: IE 5 & 6 only */
    border-top: 3px solid white; /* override bottom of row above */
}

.moreinfoField {
    margin-left: 2ex;  /* "hanging" paragraph:  indent all lines */
    text-indent: -2ex;  /* ...except the first */
}

address, blockquote, dd, div, dl, dt, fieldset, form, frame, frameset,
h1, h2, h3, h4, h5, h6, noframes, ol, p, ul, center, dir, menu, pre {
    text-indent: 0;  /* override inheritance */
}

table.results th,
table.results td {
    border-width: 1px;
    border-style: solid;
    border-bottom: none;
    padding: 2px;
    border-color: white;
}
table.results th { border-top: hidden }
table.results td { border-top: none }
/*

table.results.theme_collection td,
table.results.theme_collection th {
    border-left-color: #006f99;
    border-right-color: #006f99;
}

table.results.theme_coll_pub td,
table.results.theme_coll_pub th {
    border-left-color: #006f99;
    border-right-color: #006f99;
}

table.results.theme_publication td,
table.results.theme_publication th {
    border-left-color: #006f99;
    border-right-color: #006f99;
}

table.results.theme_data td,
table.results.theme_data th {
    border-left-color: #080;
    border-right-color: #080;
}

table.results.theme_package td,
table.results.theme_package th {
    border-left-color: #900;
    border-right-color: #900;
}

table.results.theme_contact td,
table.results.theme_contact th {
    border-left-color: #408;
    border-right-color: #408;
}

table.results.theme_dformat td,
table.results.theme_dformat th {
    border-left-color: #790;
    border-right-color: #790;
}

table.results.theme_pformat td,
table.results.theme_pformat th {
    border-left-color: #B80;
    border-right-color: #B80;
}

table.results.theme_location td,
table.results.theme_location th {
    border-left-color: #804;
    border-right-color: #804;
}

table.results.theme_annkey td,
table.results.theme_annkey th {
    border-left-color: #888;
    border-right-color: #888;
}

table.results.theme_annotation td,
table.results.theme_annotation th {
    border-left-color: #888;
    border-right-color: #888;
}

*/
table.results th { /* multi-row headers (e.g. Namespace / define type format) */
    border-top-color: white;
    border-bottom-color: white;
    border-bottom-width: 1px;
}
table.results thead {
    border-style: solid;
    border-width: 1px 1px 0 1px;
    border-color: white white transparent white;
}
table.results thead th.transparent {
    background: white;
}

col.pkg_name  { width: 35em; }
col.pkg_desc  { width: 40em; }
col.pkg_fmt   { width: 8em; }
col.pkg_files { width: 6em; }
col.pkg_size  { width: 8em; }

/* Collection contents on collection detail page */
div.collcontents {
    margin: .83em 0;   /* like h3 */
    font-weight: bold; /* like h3 */
    font-size: 1.17em; /* like h3 */
    clear: left;       /* like h3 */
}

.downloadable_packages {
}

.downloadable_packages .pkg {
    margin-top: 1ex;
}

.downloadable_packages .package_locations {
}

.downloadable_packages .package_locations .loc {
    margin-top: 1ex;
    list-style-type: square;
}

/* Package contents within search results page */
table.results * table.pkgcontents {
    border-collapse: collapse;
    margin: 0px;
    margin-bottom: 10px;
    padding: 0px;
    border: 2px solid white;
}

table.results * table.pkgcontents {
    /* background: #9C9; */
}
table.results * table.pkgcontents th {
    /*background: #EEC;*/
    border: 2px solid white;
}
.th_note {
    font-weight: normal;
    font-size: 80%;
}
table.results * table.pkgcontents td {
    /*background: #EEC;*/
    padding: 2px;
    border: 2px solid white;
}

table.results * table.pkgcontents ul { /* nested package paths */
    margin: 0;
    padding: 0;
    margin-left: 1em; /* enough indentation for bullets */
}

/* XXX hacky */
table.pkgcontents { width: 100%; }
col.content_name { min-width: 20ex; max-width: 40ex; }
col.content_desc { min-width: 20ex; max-width: 40ex; }
col.content_fmt  { max-width: 9ex; }
col.content_size { width: 8ex; }
col.content_path { min-width: 20ex; max-width: 40ex; }

table.results table.pkglocations { border-collapse: collapse; }
table.results table.pkglocations th { border: 2px solid white; }
table.results table.pkglocations td { border: 2px solid white; }

col.minwidth { width: 0.1%; }


/* Staging areas */

table#stagingAreas .attention { color: #F00; font-weight: bold; }

table#stagingAreas {
    /*width: 100%;*/
    background: #DDD;
    border-color: #888;
    border-collapse: collapse;
    border-width: 3px;
    border-style: solid;
}

table#stagingAreas * tr.entry {
    background: #DDD;
    border-color: #888;
    border-width: 3px 1px 1px 1px;
    border-style: solid;
    /*border-left-color: inherit;*/
    /*border-right-color: inherit;*/
    border-bottom-color: white;
}

table#stagingAreas * tr.contents {
    background: white;
    border-width: 3px 0 0 0;
    border-style: solid;
    border-top: hidden; /* overrides the bottom border of the row above */
    /*border-left-color: inherit;*/
    /*border-right-color: inherit;*/
}

table#stagingAreas td {
    border-width: 0 2px 0 2px;
    border-style: solid;
    border-left-color: white;
    border-right-color: white;
    padding: 2px;
}
table#stagingAreas th {
    /*border: 2px solid white;*/
    border-style: solid;
    border-width: 3px 3px 0 3px;
    border-top-color: white;
    border-left-color: white;
    border-right-color: white;
}
table#stagingAreas thead th.transparent {
    background: white;
}

table#stagingAreas td.contents {
    width: 70%;
}
table#stagingAreas td.contents ul {
    list-style-position: inside;
    margin-left: 0px; /* no indentation */
    padding-left: 0px; /* no indentation */
}
table#stagingAreas .longbutton { width: auto; } /* longest sets column width */
table#stagingAreas .flexbutton { width: 100%; } /* ...and others match it */
table#stagingAreas .preferred { font-weight: bold; }

/* reserved handles */
table#reservations {
    background: #DDD;
    border-color: #888;
    border-collapse: collapse;
    border-width: 3px;
    border-style: solid;
}
table#reservations * tr:first-child {
    border-color: white;
    border-width: 3px 3px 0px 3px;
    border-style: solid;
}
table#reservations * tr {
    border-color: #888;
    border-width: 3px;
    border-style: solid;
}
table#reservations th, table#reservations td {
    border-width: 0 2px 0 2px;
    border-style: solid;
    border-left-color: white;
    border-right-color: white;
    padding: 2px;
}


/* Browse collections by keyword */
div.featured_keywords {
    /*float: right;*/
    /*max-width: 25%;*/
    /*border: 1px dotted #0F0;*/
}
ul.keyword_list {
    margin-top: 0;
    padding-top: 0;
    float: left;
    max-width: 25%;
    min-width: 15%;
    /*display: table-cell;*/
    /* margin-left: 0ex; /* no indentation */
    /* padding-left: 2ex; /* just enough indentation for the bullets */
}

#browse_collection_links {
    margin: 0;
    padding: 1ex;
    background-color: #DDD;
}
#browse_collection_links h3 {
    display: inline;
    font-size: 100%;
}
#browse_collection_links h3:after {
    /*content: ":";*/
}
#browse_collection_links .current {
    /*font-weight: bold;*/
}
#browse_collection_links ul {
    display: inline; /* on same line as h3 */
    margin-left: 0px; /* no indentation */
    padding-left: 0px; /* no indentation */
    /* list-style: none; /* no bullets */
}
#browse_collection_links ul li {
    display: inline; /* all on one line */
}
#browse_collection_links ul li:before { /* doesn't work in IE */
    content: "\0000A0\0025CF\0000A0"; /* nbsp, bullet, nbsp */
}
* html  #browse_collection_links ul li { /* IE 5 & 6 */
    padding-left: 1em; /* make up for missing :before in IE */
}
*:first-child+html  #browse_collection_links ul li { /* IE 7 */
    padding-left: 1em; /* make up for missing :before in IE */
}

div.browse_collections {
    /*border: 1px solid #F0F;*/
}
div.browse_collections dt {
    font-weight: normal; /* override global dt rule */
}
div.browse_collections dd {
    font-size: 80%;
    margin-bottom: 1ex;
}
div.browse_collections a {
    font-weight: bold;
}
div.browse_recent_collections .browseName {
    float: left;
}
div.browse_collections .browseContribSeparator {
    display: none;
}
div.browse_collections .browseContribDate {
    float: right;
    padding-left: 1em; /* space between name and date */
    white-space: nowrap; /* for IE */
}
div.browse_collections dd {
    clear: left;
}
div.browse_recent_collections {
    clear: both;
}
div.browse_recent_collections dd {
    clear: both;
}


/* */
table#sessions {
}
table#sessions th, table#sessions td {
    background-color: #EDF;
}

/* warning */
.warning {
    color: red;
}

/* user error */
.usererror {
    color: red;
}

.error {
    color: red;
}

/* form error */
input[type=text].formerror, input[type=password].formerror, input[type=file].formerror, textarea.formerror, select.formerror {
    background: yellow;
    border-color: red;
}

/* Debugging */
span.debug {
    /* display: none; /**/
    background: yellow;
    color: red;
}

.bug {
    background: red;
    color: black;
}


