/* Firstly, a couple of things that all browsers ought to do anyway (grr) */

H1 { text-align: center; font-size: 32px; }

H2, H3 { text-decoration: underline; }

DT { font-weight: bold; }
DT { padding-top: 2ex; margin-bottom: 0.5ex; }
DD { margin-top: 0ex; margin-bottom: 1.0ex; }
DL { padding: 0 2em 1ex; }

DIV.section { clear: both; }
DIV.section HR { clear: both; }
DL.trips DT { clear: both; }
P.illustration { float: right; }

/* The images need a bit of "personal space" */
IMG { margin: 2px; }

/* Club tagline */
DIV.tagline { text-align: center;
              margin-left: 10%; margin-right: 10%;
              padding-left: 1em; padding-right: 1em; }

/* Important notices */
DIV.important { border: thick outset;
                text-align: center;
                margin-left: 10%; margin-right: 10%;
                padding-left: 1em; padding-right: 1em; }

/* Quoted text */

body > blockquote { border: thin outset; padding: 5px; }
blockquote address { text-align: right; padding: 0.5ex; }

/* Image titles */
H1 > IMG { vertical-align: middle; }

/* FAQs */
DIV.qanda { padding: 0 0.5em; border: thin solid; margin: 5ex 1em; }

/* Committe table */
TABLE#committee-by-year { border-collapse: collapse; }
TABLE#committee-by-year TH { border: thin solid; }
TABLE#committee-by-year TD { border: thin solid; }
TABLE#committee-by-year TD.empty { border-top: none; border-left: none; }
TABLE#committee-by-year TH.colhead { border-top-width: medium;
                                     border-left-width: medium;
                                     border-right-width: medium; }

TABLE#committee-by-year TH.rowhead { border-top-width: medium;
                                     border-left-width: medium;
                                     border-bottom-width: medium; }

/* Diary: these tables of events are to stand out from the main text. */
DL.diary, DIV.menu, DIV.abstract { border: thin outset; margin-left: 5%; margin-right: 10%; }
DIV.menu H2 { text-align: center; }

/* Calendar */
TABLE.calendar { border: thick solid black; border-collapse: collapse; margin-top: 0;
                 table-layout: fixed; clear: both; width: 100%; min-width: 400px;
                 speak-headers: always; }

TABLE.calendar TH { border: medium solid; font-size: larger; whitespace: nowrap; }
TABLE.calendar TD { border: thin solid; width: 14%; vertical-align: baseline; }
TABLE.calendar COL#saturday { border-left: medium solid; }
TABLE.calendar COL#sunday   { border-right: medium solid; }
TABLE.calendar TD.first-week { border-top: medium solid; }
TABLE.calendar TD.first-day { border-left: medium solid; }
TABLE.calendar TD.last-week { border-bottom: medium solid; }
TABLE.calendar TD.last-day { border-right: medium solid; }

TABLE.calendar TD { padding: 0; min-height: 50px; width: 14%; }
TABLE.calendar H2 { text-decoration: none; padding: 0; margin-top: 0; whitespace: nowrap; }
TABLE.calendar TD > DIV { padding: 0.5em 0.5em; min-height: 8em; }
TABLE.calendar P { text-align: left; vertical-align: middle; clear: none; }
TABLE.calendar P.info { font-size: 70%; vertical-align: bottom;
                        margin-left: 1em; text-indent: -1em; }
TABLE.calendar P.trip,
TABLE.calendar P.social { text-align: center; margin: 1em; }
TABLE.calendar P.weekly { text-align: center; }
TABLE.calendar :link,
TABLE.calendar :visited { font-weight: bold; text-decoration: underline; }
TABLE.calendar .moon { display: none; }

/* Picture tables. */
TABLE.pics         { border-collapse: collapse; border-spacing: 0; }
TABLE.pics TD      { border: thin dotted black; }
TABLE.pics CAPTION { border: thin dotted; border-bottom: none; }

TABLE.pics          { text-align: center; }
TABLE.pics CAPTION  { vertical-align: middle; }
TABLE.pics TD       { vertical-align: middle; }
TABLE.pics TD.thumb { vertical-align: baseline; }

TABLE.pics TD.thumb   { padding: 0.5em 0.5em 1em; }
TABLE.pics TD.nothumb { padding: 2.5em; line-height: 150%; }
TABLE.pics CAPTION { letter-spacing: 0.3em; margin-top: 1.5em; padding: 0.2em; }

/* Picture blocks */
DIV.pics { margin: 1em 0 2em; }
DIV.pic { float: left; border: thin dotted black; margin-left: -1px; margin-bottom: -1px; }
DIV.pic P { width: 154px; text-align: center; margin: 0; padding: 0; border: 0; }
DIV.pic P.thumb { height: 158px; display: table-cell; vertical-align: bottom; }
DIV.pic P.caption { height: 3em; vertical-align: top; }
DIV.pic IMG { margin: 0; border-width: 1px; }      /* exception to "personal space" declared above */

/* The questionnaire: */
ol.questions    {list-style-type: decimal; }
ol.questions ol {list-style-type: lower-alpha; }
ol.result    {list-style-type: none; }
ol.result ol {list-style-type: lower-alpha; }
ol.questions > li,  ol.result > li { margin: 1em 4em; }
ol.questions ol, ol.result li { margin-top: 0.5em; }

/* Overheard conversations */
div.dialogue { border: thin outset; width: auto; margin: 2em 4em; }
div.dialogue ol { list-style-type: none; }

/* Datestamp: small, right-aligned */
P.timestamp { text-align: right; font-size: smaller; }


/*
   Float navigation links to top right.  Assume that it's the first
   element in the BODY.
*/
P.navigation
{
  float: right;
  margin: 0 0 2em 2em;
}

/*
   No nav links when printing!
*/
@media print { 
P.navigation
  {
    display: none;
  }
}
div.notice {
  padding: 5px;
  margin: 5px;
  background-color: #FFCCD7;
  border: 1px solid red;
}

