﻿@charset "utf-8";
/* CSS Document */

/* Grundlayout für SELFHTML-Beispiele */

@import url(https://fonts.googleapis.com/css?family=Audiowide);

html {
  background: #000;
  color: #eee;	
  font-family: Arial;
}

body {
  margin: 1em auto;
  max-width: 65em;
}

h1, main, aside, main svg {
  padding: 1em;
  margin: 1em;
}

h1, h2 {
  color: hsl(73,100%,55%);
  background: linear-gradient(to right, transparent, hsl(73,100%,55%));
  font-family: Audiowide;
}

article img {
  width: 33%;
  float: right;
  margin-left: 0.5em;
}

figure {
  display: inline-block;
  width: 30%;
  margin: 0.2em;
}
figure img {
  width: 100%;
}
figure figcaption {
  font-style: italic;
}

section {
  border-color: slateblue;
}

#styleswitcher  ul {
  list-style-type: none;
  margin-left: 0;
  padding-left: 0;
}

#styleswitcher button {
  width: 9em;
  margin-bottom: 0.2em;
  background: radial-gradient(hsl(73,100%,55%), transparent 80%);
  color: black;
  border: 0;
}

#styleswitcher  button:hover, #styleswitcher  button:focus {
  background: radial-gradient(hsl(73,100%,55%), transparent );
}

nav a {
  background: radial-gradient(hsl(73,100%,55%), transparent 50%);
  color: black;
}

nav a:hover, nav a:focus {
  background: radial-gradient(hsl(73,100%,55%), transparent 80%);
}

nav a[aria-current=page] {
	color:white;
	border-color: black;
}

a {
  color: orange;
}

a:hover,
a:focus {
/*  background: #e6f2f7; */
  background: #000;
  color: skyblue;
}

/* responsives Layout */

body {
  display: flex;
  flex-flow: row wrap;
}

/* Mobile first - alle Dokument-Blöcke bekommen 100% Breite */
header, nav, nav a, article, section, aside, footer {
  padding: 1em;
  margin: 1em;
  flex: 1 100%;
}

header {
  display: flex;
  flex-flow: row wrap;
}
header * {
  flex: 1 1 0%;
}
header img {
  flex: 0 0 150px;
  margin-right: 20px;
}
header nav {
  flex: 1 1 100%;
}
nav, nav ul, nav li{
  margin: 0;
  padding: 0;
  border: none;
}
nav ul {
  display: flex;
  flex-direction: column;
}
nav li {
  list-style-type: none;
  margin: 1.3em 0;
  flex: 1 1 100%;
}
nav a {
  display: inline-block;
  width: 95%;
  margin: 0;
  text-decoration: none;
  text-align: center;
}

footer {
  display: flex;
  flex-flow: row wrap;
}
footer * {
  flex: 1 1 0%;
  justify-content: space-between;
}
footer p {
  text-align: right;
}
/* Smart Phones und Tablets mit mittlerer Auflösung */
@media all and (min-width: 35em) {
header img {
  margin-right: 50px;
}
nav ul {
  flex-direction: row;
}
nav li {
  margin: 0 1em;
  flex: 1 1 0%;
}
article {
  order: 2;
}
#news {
  flex: 1 auto;
  order: 3;
}
aside {
/* durch auto werden die beiden asides in eine Zeile gesetzt */
  flex: 1 auto;
  order: 4;
}
footer {
  order: 5;
}
}

/* Large screens */
@media all and (min-width: 50em) {
 article {
  /* Der Article wird 3x so breit wie die beiden asides! */
  order: 3;
  flex: 3 1 0%;
}
aside {
  flex: 1 1 0%;
}
#news {
  flex: 1 1 0%;	
  order: 2;
  align-self: center;
  height: 12em;
}
}

@keyframes ants { to { background-position: 100% 100% } }

article {
	padding: 1em;
	border: 1em solid transparent;
	background: linear-gradient(black, black) padding-box,
	            repeating-linear-gradient(-45deg, black 0, black 25%, orange 0, orange 50%) 0 / 2em 2em;
	animation: ants 9s linear infinite;
	
}


/* Terminkalender */

table, th, td { 
  width: 100%;
  border: 1px solid; 
  border-collapse: collapse; 
/*  color: hsl(73,100%,55%); */
  color: lightgreen;
}

th, td {
	padding: .5em;
}

th {
	background: hsl(73,100%,55%);
	color: black;
}

caption {
	caption-side: bottom;
	padding-top: 2em;
	font-style: italic;
}