html {
  background: #fff url("/images/rundweg.jpg") repeat;
  font-size: 90%;
  font-family: sans-serif;
}

body {
  margin: 0px;
}

/* Hilfreich, wenn man ohne CSS auskommen muss... */
h1 {
  display: none;
}

h2 {
  margin-top: 0px;
  padding-top: 0px;
  text-align: center;
}

sup {
  font-size: 0.6rem;
}

p,li {
  max-width: 35em;
}

textarea {
  box-sizing: border-box;
}

input[type="text"] {
  box-sizing: border-box;
}

input[type="password"] {
  box-sizing: border-box;
}

.note {
  font-style: italic;
}

.error {
  font-weight: bold;
  color: #f00;
}

.col0 {
  background: #ccf;
}

.col1 {
  background: #aaf;
}

.col0a {
  background: #cfc;
}

.col1a {
  background: #afa;
}

.col1b {
  background: #ffa;
}

.sponsor {
  display: block;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 10px;
}

.centerimage {
  display: block;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.centerimage img {
  border: 1px solid black;
}

/*************************** Top-Menü *****************************/

.topmenu h2 {
  display: none;
}

.topmenu ul {
  list-style-type: none;
}

.topmenu li>a {
  display: block;
  text-decoration: none;
  font-variant: small-caps;
  font-weight: bold;
  color: #000;
  background: #ccf;
}

.topmenu .icon img {
  border: 1px solid black;
}

@media screen and (min-width: 900px) {
  .topmenu {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 30px;
    background: #eee;
    border-bottom: 1px solid black;
    z-index: 9;
  }

  .topmenu>ul {
    position: absolute;
    padding: 0;
    margin: 0;
    padding-left: 1%;
    height: 20px;
    bottom: 1px;
  }

  .topmenu>ul>li {
    float: left;
    position: relative;
    margin-left: 15px;
    border-bottom: 1px solid black;
  }

  .topmenu>ul>li>a {
    padding-left: 10px;
    padding-right: 10px;
    border-left: 1px solid black;
    border-right: 1px solid black;
    border-top: 1px solid black;
  }

  .topmenu>ul>li>ul {
    background: #ccf;
    visibility: hidden;
    position: absolute;
    top: 100%;
    left: 0;
    padding: 0;
    margin: 0;
    border-top: 1px solid black;
    box-shadow: 5px 5px 10px #000;
    -moz-box-shadow: 5px 5px 10px #000;
    -webkit-box-shadow: 5px 5px 10px #000;
  }

  .topmenu>ul>li>ul>li {
    float: left;
    position: relative;
    width: 100%;
    border-bottom: 1px solid black;
    border-left: 1px solid black;
    border-right: 1px solid black;
  }

  .topmenu>ul>li>ul>li>a {
    height: auto;
    line-height: 1em;
    padding: 5px;
    margin: 0px;
    border: 0px;
    background: #ccf;
    color: #000;
  }

  .topmenu ul li:hover ul,
  .topmenu ul a:hover ul {
    visibility: visible;
  }

  .topmenu ul a:hover {
    background: #88f;
  }

  .topmenu .icon {
    float: right;
    margin: 0px;
    padding: 0px;
    padding-right: 10px;
    padding-top: 7px;
  }

  .topmenu .icon a {
    padding: 0px;
    margin: 0px;
    border: 0px;
  }
}

@media screen and (max-width: 899px) {
  .topmenu {
    border: 1px solid black;
    border-radius: 5px;
    box-shadow: 5px 5px 10px #000;
    -moz-border-radius: 5px;
    -moz-box-shadow: 5px 5px 10px #000;
    -webkit-border-radius: 5px;
    -webkit-box-shadow: 5px 5px 10px #000;
    background: #eef;
    margin: 10px 10px 0 10px;
    padding: 10px;
  }

  .topmenu>ul {
    width: 100%;
    padding: 0;
    margin: 0 0 5px 0;
    border: 1px solid black;
    border-width: 1px 1px 0 1px;
  }

  .topmenu>ul>li {
    width: 100%;
    border-bottom: 1px solid black;
  }

  .topmenu>ul>li>a {
    padding-left: 15px;
    border: 0;
    margin: 0;
  }

  .topmenu>ul>li>ul {
    width: 100%;
    left: 0;
    padding: 0;
    margin: 0;
  }

  .topmenu>ul>li>ul>li {
    width: 100%;
    border-top: 1px solid black;
  }

  .topmenu>ul>li>ul>li>a {
    padding-left: 30px;
    margin: 0px;
    border: 0px;
  }

  .topmenu .icon {
    display: inline;
    padding: 0px;
    margin: 0px;
    border: 0px;
  }
}

/************************* Drei Spalten ***************************/

@media screen and (min-width: 900px) {
  .centercolumn {
    margin-left: 19%;
    margin-top: 50px;
    width: 57%;
  }

  .leftcolumn {
    position: absolute;
    left: 2%;
    top: 20px;
    width: 15%;
    min-width: 153px;
  }

  .rightcolumn {
    position: absolute;
    left: 78%;
    top: 20px;
    width: 20%;
    min-width: 204px;
  }
}

.leftcolumn .box H2, .rightcolumn .box H2 {
  font-size: 120%;
  margin: 0px;
  margin-bottom: 15px;
}

.leftcolumn .box, .rightcolumn .box {
  background: #eef;
}

.box {
  border: 1px solid black;
  border-radius: 5px;
  box-shadow: 5px 5px 10px #000;
  -moz-border-radius: 5px;
  -moz-box-shadow: 5px 5px 10px #000;
  -webkit-border-radius: 5px;
  -webkit-box-shadow: 5px 5px 10px #000;
  background: #fff;
  margin-top: 30px;
  padding: 10px;
}

@media screen and (max-width: 899px) {
  .box {
    margin: 10px 10px 0 10px;
  }
}

.important_box {
  background: #aaf !important;
}

.white_box {
  background: #fff !important;
}

.footer {
  margin-top: 20px;
  margin-left: 19%;
  width: 57%;
  text-align: center;
  border-top: 1px solid black;
  padding-top: 10px;
  font-size: 70%;
  padding-bottom: 10px;
  margin-bottom: 10px;
  background: #fff;
}

.footer a, .footer a:link, .footer a:visited {
  text-decoration: none;
  color: #000;
}

.footer a:hover, .footer a:active {
  text-decoration: underline;
}

/*************************** Logo ********************************/

.box.logo {
  background: #fff;
  text-align: center;
  font-variant: small-caps;
  font-size: 70%;
}

.logo img {
  border: 0pt;
}

.logo a {
  text-decoration: none;
  background: #fff; color: #666;
}

.wpf-logo {
  margin-top: 3px;
}


/*************************** Menü ********************************/

.menu ul {
  margin: 0px;
  padding: 0px;
  list-style: none;
  margin-bottom: -5px;
}

.menu li {
  position: relative;
  font-size: 80%;
}

.menu a {
  display: block;
  font-weight: bold;
  text-align: center;
  background: #fff;
  padding: 5px;
  margin-bottom: 5px;
  border: 1px solid black;
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
}

.menu a, .menu a:link, .menu a:visited {
  text-decoration: none;
  color: #000;
}

.menu a.aktiv {
  background: #ccf;
}

.menu a:hover {
  background: #88f;
}

/************************ Login-Bereich **************************/

.login {
  text-align: center;
  font-size: 80%;
}

.login table {
  width: 100%;
}

.login table+p {
  margin-top: 0px;
  padding-top: 0px;
}

.login p {
  text-align: center;
}

.login table input {
  width: 100%;
}

.login th {
  text-align: left;
}

.login_anhang {
  font-size: 90%;
  padding: 0px;
  margin: 0px;
}

.login_msg {
  font-size: 80%;
  font-weight: bold;
  color: #f00;
}

.login_msg_success {
  font-size: 80%;
  font-weight: bold;
  color: #080;
}

.button a {
  padding: 5px;
  border: 1px solid black;
  border-radius: 5px;
  text-decoration: none;
  display:inline-block;
  width: calc(100% - 20px);
  text-align:center;
  background: #fff;
  font-weight:bold;
}

.button a,
.button a:link, 
.button a:visited {
  text-decoration: none;
  color: #000;
}

.button a.aktiv {
  background: #ccf;
}

.button a:hover {
  background: #88f;
}

/********************* Startseite *********************************/

.startseite {
  background: #fff url("/images/banner2.png") top repeat-x;
  padding-top: 120px;
}

.startseite hr,
hr.aktuelles_form {
  clear: both;
  border: 0px;
  border-bottom: 1px solid black;
}

.aktuelles_datum {
  font-size: 80%;
  background: #fff; color: #888;
}

.aktuelles_titel {
  font-weight: bold;
}

.aktuelles_eintrag {
  margin-bottom: 20px;
}

.aktuelles_bild {
  float: left;
  margin-right: 10px;
  margin-bottom: 10px;
  max-width: 200px;
  max-height: 200px;
}

.was_ist {
  text-align: center;
}

.was_ist p:first-child {
  font-style: italic;
}

ul.termine {
  margin: 0px;
  padding: 0px;
  list-style: none;
  margin-bottom: -5px;
  font-size: 80%;
}

ul.termine li {
  margin-bottom: 5px;
  margin-left: 20px;
}

.termine_datum {
  margin-left: -20px;
  font-style: italic;
}

ul.termine a {
  font-weight: bold;
}

/*********************** Verein ****************************/

.stand {
  font-size: 80%;
  font-weight: bold;
}

/*************************** Sitemap **************************/

.sitemap UL {
  margin-left: 40px;
  padding-left: 0px;
  margin-top: 0px;
}

.sitemap LI {
  padding-bottom: 5px;
}

.sitemap h3 {
  margin-bottom: 5px;
}

.sitemap_seiten {
  font-size: 80%;
  font-style: italic;
  margin-left: 40px;
  padding-top: 0px;
  margin-top: 0px;
  padding-bottom: 5px;
  margin-bottom: 0px;
}

.sitemap_unterseiten {
  font-size: 80%;
  font-style: italic;
}

/*************************** Einführung **************************/

.einfuehrung_raetsel_bild {
  text-align: center;
  float: right;
  margin-left: 10px;
}

.einfuehrung_raetsel_bild p {
  margin-top: 0px;
  padding-top: 0px;
  margin-bottom: 20px;
}

.einfuehrung_raetsel_aufgabe {
  margin-left: 20px;
  margin-right: 20px;
  font-style: italic;
}

/************************** Tabellen **************************/

.lmd_table {
  width:100%;
  border-collapse: collapse;
}

.lmd_table th {
  background:#ddf;
  padding-top:10px;
  padding-bottom:10px;
  border-top:1px solid black;
}

.lmd_table tr td:first-child,
.lmd_table tr th:first-child {
  border-left:1px solid black;
  padding-left:5px;
  padding-right:5px;
}

.lmd_table tr td:last-child,
.lmd_table tr th:last-child {
  border-right:1px solid black;
}

.lmd_table td {
  text-align:center;
  border-top:1px solid black;
  border-bottom:1px solid black;
  padding-top:10px;
  padding-bottom:10px;
  background:#eef;
}

.lmd_table a {
  margin-left:5px;
  margin-right:5px;
  display: block;
  font-weight: bold;
  text-align: center;
  background: #fff;
  padding: 5px;
  margin-bottom: 5px;
  border: 1px solid black;
  border-radius: 5px;
}

.lmd_table a, 
.lmd_table a:link, 
.lmd_table a:visited {
  text-decoration: none;
  color: #000;
}

.lmd_table a.aktiv {
  background: #ccf;
}

.lmd_table a:hover {
  background: #88f;
}

/***************** Rätseldesignwettbewerb *********************/

.rdw_logo {
  float: right;
  margin-left: 10px;
  margin-bottom: 10px;
}

.rdw_gewinner {
  width: 100%;
}

.rdw_gewinner tr td, .rdw_gewinner tr th {
  vertical-align: top;
}

.rdw_gewinner tr th:first-child {
  text-align: right;
}

.rdw_gewinner tr th:first-child+td {
  width: 50%;
}

.rdw_mitwirkende_titel {
  font-weight: bold;
}

.rdw_ablaufplan {
  font-size: 80%;
}

.rdw_ablaufplan_datum {
  font-weight: bold;
}

/******************************* Hochladen *************************/

.upload {
  font-size: 80%;
}

.upload TEXTAREA,
.upload input[name=name] {
  max-width: 100%;
}

.upload input[name=datei] {
  max-width: 100%;
}

.upload_submit {
  text-align: center;
}

.upload_link {
  text-align: right;
  margin-bottom: 0px;
}

.upload_list_gross {
  margin: 0px;
  padding: 0px;
  list-style: none;
}

.upload_list_gross_name {
  font-weight: bold;
}

.upload_list_gross_data {
}

.upload_list_gross tr td:first-child {
  width: 100px;
  height: 100px;
  max-width: 100px;
}

.upload_list_gross a {
  border: 0px;
  text-decoration: none;
  color: #000;
}

.upload_list_gross img {
  max-width: 100px;
  max-height: 100px;
  border: 0px;
}

.upload_list_gross_navi {
  text-align: center;
  margin: 0px;
  padding: 0px;
}

.upload_list {
  margin: 0px;
  padding: 0px;
  list-style: none;
  margin-bottom: -5px;
  font-size: 80%;
}

.upload_list_name {
  font-weight: bold;
}

.upload_list_data {
}

.upload_list a {
  border: 0px;
  text-decoration: none;
  color: #000;
}

.upload_list img {
  max-width: 60px;
  max-height: 60px;
  float: right;
  margin-left: 5px;
  margin-bottom: 5px;
  border: 0px;
}

.upload_list li {
  clear: right;
}

.upload_list_link {
  text-align: right;
  width: 100%;
  font-size: 80%;
  margin-bottom: 0px;
  clear: right;
}

.upload_large_image {
  text-align: center;
}

.upload_large_image img {
  max-width: 100%;
}

.upload_detail {
  width: 100%;
}

.upload_detail th {
  text-align: left;
}

/******************** Meisterschaften **********************/

.meistertabelle,
.ergebnistabelle,
.djsm_schulen {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  font-size: 80%;
}

.meistertabelle th,
.ergebnistabelle th {
  text-align: left;
}

.ergebnistabelle tr *:first-child {
  text-align: center;
}

.meistertabelle th,
.meistertabelle td {
  vertical-align: top;
}

.djsm_schulen td {
  text-align: center;
}

.djsm_schulen tr td:first-child {
  text-align: left;
}

.mitwirkende {
  font-size: 80%;
  clear: both;
}

.mitwirkende th {
  text-align: left;
  vertical-align: top;
}

.archiv_meisterschaft {
  width:100%;
  border-collapse: collapse;
}

.archiv_meisterschaft th {
  background:#ddf;
  padding-top:10px;
  padding-bottom:10px;
  border-top:1px solid black;
}

.archiv_meisterschaft tr td:first-child,
.archiv_meisterschaft tr th:first-child {
  border-left:1px solid black;
  padding-left:5px;
  padding-right:5px;
}

.archiv_meisterschaft tr td:last-child,
.archiv_meisterschaft tr th:last-child {
  border-right:1px solid black;
}

.archiv_meisterschaft td {
  text-align:center;
  border-top:1px solid black;
  border-bottom:1px solid black;
  padding-top:10px;
  padding-bottom:10px;
  background:#eef;
}

.archiv_meisterschaft a {
  margin-left:5px;
  margin-right:5px;
  display: block;
  font-weight: bold;
  text-align: center;
  background: #fff;
  padding: 5px;
  margin-bottom: 5px;
  border: 1px solid black;
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
}

.archiv_meisterschaft a, 
.archiv_meisterschaft a:link, 
.archiv_meisterschaft a:visited {
  text-decoration: none;
  color: #000;
}

.archiv_meisterschaft a.aktiv {
  background: #ccf;
}

.archiv_meisterschaft a:hover {
  background: #88f;
}

/******************************************************************/

.pwd_change_form {
  text-align: center;
}

.pwd_change_form input {
  max-width: 100%;
}

.registrieren table {
  width: 100%;
  max-width: 100%;
}

.registrieren th {
  text-align: left;
}

.registrieren input[name=login],
.registrieren input[name=pwd1],
.registrieren input[name=pwd2],
.registrieren input[name=vorname],
.registrieren input[name=nachname] {
  width: 45%;
}

.registrieren input[name=email],
.registrieren textarea[name=adresse] {
  width: 100%;
}

.termin_form {
  text-align: center;
  font-size: 80%;
}

.termin_form input[type=text] {
  width: 100%;
}

.delete_termin_form p {
  text-align: center;
}

A.bilderliste,
A.bilderliste img {
  border: 0px;
  text-decoration: none;
  color: #000;
}

.bilderliste {
  font-size: 70%;
  display: inline-block;
  margin-bottom: 10px;
}

.bilderliste img {
  max-width: 50px;
  max-height: 50px;
  margin: 5px;
}

iframe.video {
  width: 425;
  height: 350;
}

.aktuelles_form {
  max-width: 100%;
}

.aktuelles_form TH {
  text-align: left;
}

.aktuelles_form TD {
  width: 100%;
}

.aktuelles_form textarea {
  width: 100%;
}

.aktuelles_form_long {
  width: 100%;
}

.aktuelles_form_p {
  text-align: center;
}

.aktuelles_form_bild {
  max-width: 200px;
  max-height: 200px;
}

.dsm_logo {
  float: right;
  border-left: 5px;
  border-bottom: 5px;
}

.intern_mitglied {
  width: 100%;
}

.intern_mitglied th {
  text-align: left;
}

.intern_map {
  width:100%;
  height:600px;
}

.intern_popup {
  display:none;
  position:absolute;
  width:250px;
  z-index:100;
  border:1px solid black;
  border-radius:5px;
  box-shadow: 0px 0px 20px #000;
  background:#fff;
  padding:10px;
  font-size:80%;
}

.intern_popup h4 {
  margin:0px;
  text-align:center;
}

.intern_popup p {
  margin-bottom:0px;
}

/****************************** DOM *******************************/

.dom_zeitplan {
  width: 100%;
}

.dom_zeitplan th {
  text-align: left;
  vertical-align: top;
  width: 30%;
}

.dom_datum {
  margin-top: -20px;
  font-size: 80%;
}

.center {
  text-align: center;
}

.wide_center {
  text-align: center;
  max-width: 100%;
}

.dom_indiv_erg {
  font-size: 80%;
  width: 100%;
}

.dom_final_result {
  font-size: 80%;
  width: 100%;
}

.wpc_tabelle th {
  text-align: left;
}

.intern_bank {
  font-size: 70%;
}

.intern_bank th {
  text-align:left;
}

.intern_bank span {
  margin-left:2px;
}

.intern_speed {
  font-size: 80%;
}

.intern_speed p {
  hyphens: auto;
}

.intern_speed TEXTAREA,
.intern_speed INPUT[type=text] {
  max-width: 99%;
  background:#fff;
}


.speed_intern_submit {
  text-align: center;
}

.mr_image {
  z-index: 100;
  position: relative;
}

.mr_jahreswertung {
  font-size: 80%;
  width: 100%;
}

.mr_oldtable {
  text-align: center;
}

.mr_top10 {
  width: 100%;
}

.mr_indiv_form {
  text-align: center;
}

.benutzereinstellungen {
  font-size: 80%;
}

.rwe_design LI {
  padding-bottom: 30px;
  width: 500px;
}

/*********************** Wettbewerbe allgemein ********************/

.wettbewerbs_ergebnisse {
  width: 100%;
}

.wettbewerbs_ergebnisse td {
  text-align: right;
}

.wettbewerbs_ergebnisse tr td:first-child {
  text-align: left;
  font-weight: bold;
}
