html.foundation #outline-container-1,
html.software   #outline-container-1,
html.culture    #outline-container-1,
html.events     #events,
html.contact    #contact
html.discussion #discussion {
  width: 35%;
}

body {
  background-color: #fed;
  color: #333;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 10pt;
  margin: 0;
  padding: 0;
}

a:link, a:visited { text-decoration: none; font-weight: bold }
a:hover, a:focus, a:active { text-decoration: underline }
a:link           { color: #a60 }
a:visited        { color: #840 }
a:hover, a:focus { color: #000 }
a:active         { color: #fed }

img { border: 0}

header {
  background: #fed url(/images/bg.png) top left repeat-x;
  margin-top: 10px;
}

header nav {
  margin: 1em;
}
header nav ul {
  list-style: none;
  margin: 0 auto;
  width: 50em;
}
header nav ul li {
  display: inline;
  font-weight: bold;
}
header nav ul li:first-child,
header nav ul li:last-child
{
  font-weight: normal;
  font-size: smaller;
}
header nav ul:first-child:before {
  content: " - -( ";
}
header nav ul:first-child:after {
  content: " )- - "
}

header div#file_types {
                        float: right;
                        list-style: none outside none;
                        margin: 8 8 8 8;
                        font-size: 0.8em;
                       }
header div#file_types img { vertical-align: middle; }


h1,h2,h3,h4,h5 { font-family: Georgia, "Times New Roman", serif; }
header hgroup h1 {
  background: #fed url(/images/bg_gradient.png) top left repeat-y;
  color: #222;
  border-bottom: 2px dotted #ec9;
  font-size: 28px;
  font-style: italic;
  margin: 10px 0 0 0;
  padding: 0.5em;
  white-space: nowrap;
}
#software h1,
#events h1 {
  font-size: 18pt;
  margin: 0 0 0.5em;
}
header hgroup h2 {
  margin-bottom: 0;
  margin: 0 2em 1em 2em;
  font-weight: normal;
  font-size: 14pt;
}
header hgroup p {
                  margin: 20px 2em -10px 2em;
                  font-family: Georgia;
                  font-style: italic;
}

body > section {
  float: left;
  margin: 0;
  padding: 0;
}
section p {
  margin: 1em;
}
#about {
  margin-left: 0.5em;
  text-align: justify;
}
#culture {
  width: 35%;
}
#software, #events {
  margin-top: -2.25em;
  width: 20%;
}
#software hgroup h2,
#events hgroup h2 {
  margin-top: 0;
  font-size: 10pt;
  font-weight: bold;
}
#events h3 {
  font-size: medium;
  font-weight: normal;
  margin: 0.25em 2em;
}
#events h3:before {
  content: "clock ";
}


#software #no_shit {
  margin: 0;
  padding: 0;

}

#moebius {
  display: block;
  margin: 0 auto;
  text-align: center;
}


footer {
  clear: both;
  display: compact;
  font-size: smaller;
}
footer hr {
  background-color: #f0e0d0;
  border: 0;
  height: 1px;
  clear: both;
}
footer ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
footer section {
  width: 8em;
  float: right;
}
footer section h2 {
  text-align: center;
  display: none; }
#clustrMaps { width: 168px;
              margin-top: 1em;
              text-align: center; }
#disclaimer {
  font-size: smaller;
  text-align: justify;
  width: 18em; }
#credits {
  margin-right: 1em;
  text-align: center;
  width: 108px; }
#recognition { 
  margin-top: 1em;
  text-align: center; }
#badges { 
  margin-top: 2em;
  text-align: center; }

/**
 * Google Search 
**/

#google_search fieldset {
  border: 0;
}
#google_search input {
  background-color: #fed;
  border: 1px solid #a60;
}
#google_search input[type=submit] {
  font-weight: bold;
}
#google_search input:hover,
#google_search input:focus {
  background-color: #fff;
}

/**
 * homepage aka foundation
**/

html.foundation #foundation { width: 16em; }
html.foundation #culture    { width: 18em; }
html.foundation #software   { width: 13em; }
html.foundation #events     { width: 13em; }

html.foundation #foundation p {
  text-align: justify;
}
html.foundation #foundation {
  text-align: center;
}

html.foundation #software p,
html.foundation #software article,
html.foundation #events p,
html.foundation #events article {
  margin: 1em 0.5em;
  font-size: smaller;
}
html.foundation #software article .version {
  font-weight: bold;
}

html.foundation #sites article {
}

html.foundation #weaver_birds {
  font-size: smaller;
}
.dharma_wheel { font-size: 400%; line-height: 20pt; display: block; margin: 0.5em auto; text-align: center }

#sites { margin-top: 2em }

#selected_site {
                 margin: 0.5em;
                 font-size: 5pt;
}
#selected_site img {
  width: 48px;
  margin-top: 6px;
  margin-right: 12px;
  height: 48px;
  float: left;
}
#selected_site h1 {
  display: inline;
  font-size: 14pt;
  margin: 0;
}
#selected_site h2 {
  font-size: 12pt;
  margin: 0;
}

#events section h3 {
  font-size: medium;
  font-weight: normal;
}

/**
 * About
**/

html.menu1col #outline-container-1 {
  width: 52em;
  float:left;
  margin-right: 2em;
  margin-left: 9em;
}
html.menu1col h2#sec-1 { display:none } 

/* FIX here a problem, if we float right the images in the document
   then the footer gets wrong, how to avoid that?
   html.menu1col img {
                    float:right;
                    clear:right;
                    margin:-3em 1em 0;
                    } */
/**
 * Software 
**/

html.software #outline-container-1 {
  margin: 0 20px 0 2em !important;
  width: 510px !important;
}
html.software #outline-container-2 {
  margin: 0 20px 0 10px !important;
  float: left !important;
  width: 380px !important;
}

div.outline-2 {
  padding: 0;
  float:left;
  width: 35%;
}

html.software #menu {
  float: left;
  margin: 5em 0 0 0;
  padding: 0 15px;
  font-size: 0.88em;
  position: fixed;
  width: 200px;
}
html.software #software article {
  clear: both;
}
html.software #software ul {
  list-style: none;
  margin: 1em;
  padding: 0;
}
html.software #software p {
  text-align: justify;
}
html.software #software .logo {
  float: left;
  margin: 25px;
}
html.software #software .sponsors {
  float: right;
}
html.software #software .release-info {
  margin-top: 3em;
}
html.software #software .release-info .version {
  font-weight: bold;
}

.rastasoft a {
               color: #000000;
               font-size: 1.5em;
               font-weight: bold;
               }
.rastasoft {
  display: block;
  width: 12em;
  border-top: 2.2em solid #f00;
  background-color: #ff0;
  border-bottom: 2.2em solid #0f0;
  margin: 10px auto;
  padding: 12px;
  text-align: center;
}
html.software .sponsors li.rastasoft a {
  color: #000;
}
html.software .sponsors li.servus a {
  font-size: larger;
  color: #0f0;
}
html.software #foundation h3 {
  padding-left: 1em
}
html.software #foundation dl {
  font-size: smaller;
  margin: 0 1em;
}
html.software #foundation dl dt {
  font-weight: bold
}
html.software #foundation dl dd {
  margin: 1em 0.25em;
  text-align: justify;
}

img.left  { float: left; margin-right: 5px }
img.right { float: right; margin-left: 5px }

/**
 * Culture
**/

html.culture #outline-container-1 {
  margin: 0 2.5% 0 2.5% !important;
  width: 45% !important;
}
html.culture #outline-container-2 {
  margin: 0 2.5% 0 2.5% !important;
  float: left !important;
  width: 45% !important;
}

span.tag { float: right; background-color: transparent !important; font-style: italic; font-size: smaller; font-weight: bold !important; }
span.tag:before { content:":"; }   /* display tags as in org-mode */
span.tag span:after { content:":"} /* e.g.: :book:DRAFT: */

html.culture div.outline-3 { clear: right; margin-bottom: 3em; }
html.culture div.outline-3 p { text-align: justify; }
html.culture div.outline-3 p img {
  float: right;
  margin-left: 1em;
  margin-bottom: 3em;
}

/**
 * Firefox fixes
**/

article { display: block } /* force article as blocks*/
/* TODO: fix nav alignment */

/**
 * Tabs
**/

ul.tabs {
  margin: 0;
  padding: 0;
  float: left;
  list-style: none;
  height: 24px; /*--Set height of tabs--*/
  border-bottom: 1px solid #dcb;
  border-left: 1px solid #dcb;
  width: 99%;
}

ul.tabs li {
  float: left;
  margin: 0;
  padding: 0;
  height: 23px; /*--Subtract 1px from the height of the unordered list--*/
  line-height: 23px; /*--Vertically aligns the text within the tab--*/
  border: 1px solid #dcb;
  border-left: none;
  margin-bottom: -1px; /*--Pull the list item down 1px--*/
  overflow: hidden;
  position: relative;
  background: #dcb;
}

ul.tabs li a {
  text-decoration: none;
  color: #000;
  display: block;
  font-size: 10px;
  padding: 0 20px;
  border: 1px solid #fed; /*--Gives the bevel look with a 1px white border inside the list item--*/
  outline: none;
}

ul.tabs li a:hover {
  background: #000; color: #840;
}

html ul.tabs li.active, html ul.tabs li.active a:hover  {
  /*--Makes sure that the active tab does not listen to the hover properties--*/
  background: #fed;
  border-bottom: 1px solid #fed; /*--Makes the active tab look like it's connected with its content--*/
}

.tab_container {
  border: 1px solid #dcb;
  border-top: none;
  overflow: hidden;
  clear: both;
  float: left;
  width: 99%;
  background: #fed;
}
.tab_content {
  padding: 1em;
}

#player_controls {
  margin: 0;
  padding: 0;
  float: left;
  list-style: none;
  height: 14px; /*--Set height of tabs--*/
  width: 100%;
}
#player_controls li { 
  float: left;
  margin: 0 0 0 5px;
  padding: 0;
  height: 14px; /*--Subtract 1px from the height of the unordered list--*/
  line-height: 14px; /*--Vertically aligns the text within the tab--*/
  border: 1px solid #dcb;
  border-left: none;
  overflow: hidden;
  position: relative;
}
#player_controls li { font-size: 13px; line-height: 14px; font-weight: bold; width:14px; height:14px; text-align: center }
#player_controls li:hover { color: #840; } 
#player_controls #player_pause { font-size: 14px; line-height: -1px }
#player_controls #player_play,
#player_controls #player_stop { line-height: 12px }

#player_progress {
  clear: both;
  display: block;
  font-family: monospace;
  font-size: 5px;
  height: 5px;
  width: 275px;
  background-color: #edc;
  padding: 0;
  line-height: 5px;
  border: 1px solid #dcb;
  top: 3px;
  left: 3px;
  right: 3px;
  position: relative;
}
#player_progress_load_bar {
  background-color: #987;
  color: #fed;
}
#player_progress_play_bar {
  background-color: #fed;
  color: #fed;
}
#player_volume_bar {
  display: block;
  width:100px;
  height:5px;
  background-color: #dcb;
  position:relative;
  top: -15px;
  left: 180px;
}
#player_volume_bar_value {
  display:block;
  background-color: #fed;
  border: 1px solid #dcb;
  height: 3px;
}


.tab_container h2 {
  font-size: 10pt;
  margin: 0;
  line-height: 10pt;
}

#playlist_list {
  clear: both;
  padding: 1px;
}
#playlist_list ul {
  list-style: none;
  padding: 0;
}
#playlist_list ul li {
  font-family: monospace;
  font-size: 10px;
  margin: 0;
  padding: 0;
}

#playlist_list ul li.playlist_current {
  background-color: #edc;
  font-weight: bold;
}

/**
 * Events
**/

html.events #foundation { width: 40%; margin-left: 10% }
html.events #culture    { width: 40%; margin-top: -2em; margin-right: 10% }
html.events #events     { width: 100%; clear: left; margin: 1em auto; text-align:center }

html.events #syndicate { 
  background-image:url(/images/icons/feed_96x96.png); 
  background-position: top right;
  background-repeat: no-repeat;
  height: 96px;
}
#syndicate ul {
  list-style: none;
  margin: 0 0 0 64px;
  padding: 0;
}
#syndicate li {
  margin: 0 0 1em 0;
  padding: 0;
}

html.events article { padding: 0 1em }
html.events #culture #ascii_bulletin { padding: 0 2em; font-size: 12px }

html.events section.list { text-align: left; }
html.events section.list article { margin-top: 0.5em; text-align: left; }

html.events #google_calendar { border: 0; margin: 2em auto; }

#dyne_news input[type=submit] {
  font-size: smaller;
  font-family: monospace;
  font-weight: bold;
}

/* Google Calendar CSS */
#mothertable { background: #fed !important }

/* Contact Page */

html.contact #contact { width: 65% }
html.contact #foundation img { float: left; margin: 0 10px 25px 0; }
html.contact #foundation h2 { margin: 0.5em }
html.contact #foundation p { margin: 1em; text-align: justify }
html.contact #foundation address { margin-left: 1em }
html.contact #foundation { width: 35%; padding:0 1em}

html.contact #column_1 { width: 35% }
html.contact #column_2 { width: 65%; margin-top: -3em }

html.contact #column_1 h2 { margin-left: 0.5em }
html.contact #column_1 address { margin: 1em 2em }

html.contact #column_2 div.optional { visibility: hidden }
html.contact #column_2 div.submit input:first-child { display: none }

html.contact fieldset { border: none }
html.contact legend   { font-size: larger; font-weight: bold; margin: 1em auto }

html.contact p.failure { color: #c30 }
html.contact p.success { color: #3c3 }

div.database.error { display:none }

/**
 * Planet
**/
.daygroup    { margin: 0.5em auto; width:53em; clear:both }
.daygroup h2 { color: #654; padding-right:2em; border-top: 2px solid #654; border-bottom: 1px solid #654;
margin-top: 2em;width: 100%; }

.channelgroup { margin: 1em 2em; clear:both; }
.channelgroup h3 { text-align: right; }
.channelgroup h3 a { color: #654; font-variant:small-caps}

.entrygroup { margin: 1em auto; clear: left; }
.entrygroup h1 { font-family:serif; font-size: 1.67em; }
.entrygroup h1 a { color: #000 }

.entry { line-height: 1.5m; clear:both; }
.entry .content { text-align: justify; }
.entry .content ul { text-align: left; }

img.face { float: right; margin: 10px 0 20px 20px; }

/**
 * Forms
**/

html.events fieldset { text-align: left; }
html.events fieldset div.required label:before { content:"*"; color:red; font-weight:bold;}
html.events fieldset div.required label { font-weight:bold;}

html.events fieldset div { margin: 4px auto; }
html.events fieldset label { display: block; float: left; clear: left; width: 20em; }

html.events p.error { color:red; font-weight: bold; padding: 0.5em; border: 2px solid red; }
html.events p.notice { color: brown; }
