@CHARSET "UTF-8";

/* GENERIC */

a {
    font-weight: bold;
    text-decoration: none;
    color: #00008B;
}

a.redlink, span.fakelink {
    font-weight: bold;
    color: #B72020;
}

a.plainlink, a.plainlink:hover {
    font-weight: normal;
}

a:hover {
    font-weight: bold;
    text-decoration: underline;
    cursor: pointer;
    color: inherit;
}

a.redlink:hover, span.fakelink:hover {
    color: #B72020;
    cursor: pointer;
    text-decoration: underline;
}

body {
    background: #F8F0D5;
    font-family: "Trebuchet MS", "Helvetica", "sans-serif";
    font-size: 13px;
    height: 100%;
    margin: 0px;
    color: #00008B;
}

textarea {
    font-family: "Trebuchet MS", "Helvetica", "sans-serif";
    font-size: 13px;
}

table {
    border: none;
}

b, h1, h2, h3 {
    color: #00004B;
}

.error, .smarterror {
    color: #ff1010;
}

.edit_form, .edit_form_fullwidth {
    padding: 5px;
}

.edit_form input, .edit_form textarea, .edit_form select {
    width: auto;
}

.edit_form_fullwidth,
.edit_form_fullwidth input,
.edit_form_fullwidth textarea {
    width: 100%;
}

html {
    margin: 0px;
    padding: 0px;
    height: 100%;
}

input {
    font-family: inherit;
    font-size: 11px;
}

input.btn {
    padding: 3px;
    background-color: transparent;
    border-width: 1px;
    color: #B72020;
    font-weight: bold;
}

input.btn:hover {
    background-color: #FFFFC5;
}

.margin5 {
    margin: 5px;
}

.margin5 input {
    width: 150px;
}

.singleRowLabel {
    width: 15%;
    float: left;
}

.singleRowItem input, .singleRowItem select {
    width: 65%;
}

table.smallTable,
table.smallTable td {
    border-color: black;
    border-style: solid;
    border-width: 1px;
}

table.smallTable td {
    padding: 5px;
}

span.tab, span.tab_inactive {
    border-style: solid;
    border-width: 1px;
    border-color: black;
    background-color: #FFD44E;
    color: #00008B;
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 3px;
    padding-bottom: 3px;
    margin-left: 5px;
    margin-right: 5px;
    margin-bottom: 10px;
    float: left;
}

span.tab_inactive {
    background-color: #F70C0E;
}

div.tab-container {
    display: table;
}

div.itembox {
    padding: 10px;
    margin-top: 5px;
    background-color: #FFFFC5;
    border-color: #E0E0E0;
    border-width: 1px;
    border-style: solid;
}

div.itembox input {
    width: auto;
}

div.itembox label {
    margin-left: 5px;
    margin-right: 5px;
}

div.itembox span {
    display: inline-block;
}

/* Content */

.mainContainer {
    margin-left: auto;
    margin-right: auto;
    margin-top: 15px;
    margin-bottom: 50px;
    padding: 0px;
    width: 1000px;
    min-height: 100%;
    height: auto;
    background-color: #FFF8DD;
    border-style: solid;
    border-color: #D7D0B5;
    border-width: 1px;
    
}

.feet_l {
    background-image: url('feet_l.png');
    background-repeat: repeat-y;
    width: 50px;
    height: 0px;
    margin-top: 20px;
    margin-bottom: 0px;
    position: absolute; 
}

.content {
    height: auto;
    padding-bottom: 10px;
    padding-top: 3%;
    padding-left: 20px;
    padding-right: 10px;
}

.inner_content {
    margin-left: 70px;
    padding-left: 40px;
    padding-right: 40px;
    width: auto;
}

.predefinied-block {
    white-space: pre-wrap;
    text-align: justify;
}

/* Header */

.head {
    overflow: hidden;
    background: url('title.jpg');
    width: 1000px;
    height: 360px;
}

.head_container {
    height: 390px;
}

.banner {
    width: 400px;
    height: 100px;
    margin: 0px;
    margin-top: 8px;
    float: right;
}

.adtvlogo {
    height: 180px;
    width: 120px;
    margin: 0px;
}

.d4flogo {
    height: 180px;
    width: 120px;
    margin: 0px;
    padding-top: 80px;
}

.menu {
    background-color: #FFD44E;
    padding: 0px;
    margin: 0px;
    height: 30px;
    width: 100%;
    border-style: none;
    border-bottom-style: solid;
    border-bottom-color: #D7D0B5;
    border-bottom-width: 1px;
}

.menu ul {
    list-style-type: none;
    padding: 0px;
    margin: 0px;
}

.menu li {
    float: left;
    padding-top: 7px;
    padding-bottom: 0px;
    padding-left: 10px;
    padding-right: 10px;
    height: 23px;
    margin: 0px;
    color: #0000BA;
}


.menu li:hover {
    text-decoration: underline;
    background-color: #F2C50E;
}

.menu a {
    text-decoration: none;
    font-weight: normal;
    font-size: 14px;
}

/* Admin */

ul.seqNumOverview {
    list-style-type: none;
    padding: 0px;
}

span.adminInfo {
    color: red;
    font-style: italic;
}

li.admin, li.admin:hover {
    background: red;
}

li.admin a {
    color: white;
}

/* Footer */
.footer {
    padding-top: 50px;
    padding-bottom: 15px;
    color: #20208B;
    font-size: 10px;
    width: 100%;
}

/* News */
h2.newsHeadline {
    margin-top: 0px;
    font-size: 1.5em;
}

.newsFrame, .newsFrameFuture {
    margin-top: 20px;
    margin-bottom: 20px;
    margin-left: 5px;
    margin-right: 5px;
    padding: 10px;
    background-color: #FFFFC5;
    border-color: #E0E0E0;
    border-width: 1px;
    border-style: solid;
}

.stickyFrame, .stickyFrameFuture {
    margin-top: 20px;
    margin-bottom: 20px;
    padding: 10px;
    background-color: #FFF48E;
    border-color: #D0D0D0;
    border-width: 1px;
    border-style: dashed;
}

.newsFrameFuture {
    background-color: #E0F8FF;
}

.stickyFrameFuture {
    background-color: #B0C8FF;
}

.newsContainer {
    padding-top: 0px;
    margin-top: 0px;
    padding-bottom: 0px;
    margin-bottom: 0px;
}

.pagination-arrow {
    vertical-align: bottom;
    padding-left: 5px;
    padding-right: 5px;
    padding-bottom: 0px;
}

/* Kontakt */

p.oeffnungszeiten {
    font-size: 1.2em;
    float: left;
}

p.kontakt {
    font-size: 12px;
    float: left;
}

#map {
    height: 300px;
    width: 400px;
    border-color: #E0E0E0;
    border-width: 1px;
    border-style: solid;
}

#osm {
  font-size: 0.7em;
  font-style: italic;
  margin-bottom: 20px;
}

/* Galerie */
img.gallery {
    width: 100%;
    height: auto;
}

table.gallery td {
    text-align: center;
    font-size: 14px;
}

div.gallery, div.galleryInactive, div.galleryFuture {
    background: #444444;
}

div.galleryInactive {
    border-style: solid;
    border-width: 2px;
    border-color: red;
}

div.galleryFuture {
    border-style: solid;
    border-width: 2px;
    border-color: #4058FF;
}

/* Produktgruppen */

.prodgroupDesc {
    clear: both;
    width: 96%;
    padding: 2%;
    background-color: #FFFFC5;
    border-color: #E0E0E0;
    border-width: 1px;
    border-style: solid;
}

.prodgroupDescInfo {
    border-top-style: dotted;
    border-top-width: 1px;
    margin-top: 10px;
    padding-top: 10px;
}

.productList {
    padding-left: 40px;
    padding-right: 5px;
}

/* Kurse */

.pgroupbox {
    padding: 10px;
    margin-top: 5px;
    width: auto;
    background-color: #FFFFC5;
    border-color: #E0E0E0;
    border-width: 1px;
    border-style: solid;
}

ul.teacher-initials {
    margin-top: 0px;
    margin-bottom: 10px;
}

table.timetable,
table.timetable td,
table.timetable th {
    border-color: black;
    border-style: solid;
    border-width: 1px;
    text-align: center;
}

table.timetable {
    margin-top: 20px;
}

th.timetable {
    font-size: larger;
}

tr.timetable {
    height: 55px;
}

hr.ttSeparator {
    width: 90%;
    border-style: none;
    border-top-style: dashed;
    border-top-color: black;
    border-top-width: 1px;
}

div.lessonsList {
    margin-top: 10px;
}

ul.lessonsList {
    margin-top: 2px;
    margin-bottom: 0px;
}

.infotext {
    width: 95%;
    padding: 15px;
    background-color: #FFFFC5;
    border-color: #E0E0E0;
    border-width: 1px;
    border-style: solid;
}

.infotext textarea {
    width: 100%;
    margin-bottom: 5px;
}

/* Team */

div.teamInfoContainer {
    margin-bottom: 20px;
}

table.teamInfo  {
    width: 100%;
    vertical-align: top;
}

table.teamInfo td, th {
    vertical-align: top;
}

table.teamInfo th {
    text-align: left;
    font-weight: bold;
}

td.teamInfoImage {
    width: 200px;
    vertical-align: top;
}

td.teamInfoFunctions {
    font-style: italic;
    font-size: smaller;
    padding-bottom: 5px;
    
}

td.teamInfoDescription {
    padding-top: 10px;
    text-align: justify;
    white-space: pre-wrap;
    height: 100%;
}

img.teamInfoThumbnail {
    width: 150px;
}

/* Admin */
ul.admin_menu {
    list-style-type: none;
    margin: 0px;
    padding: 0px;
}

.admin_menu form {
    display: inline;
}

.admin_menu select {
    border-style: solid;
    border-width: 1px;
    border-color: #C0C0C0;
    font-weight: bold;
    color: #B72020;
    background: transparent;
}

.admin_menu li {
    margin-bottom: 5px;
}


/* change some things on mobile deviecs */
@media screen and (max-width: 1000px) {
    .head_container {height: 30px;}
    .head {display: none;}
    .mainContainer {width: 800px; margin-top: 0px; margin-bottom: 0px;}
    .feet_l {display: none;}
    .inner_content {margin-left: 0px;}
}

/* exclude header from print out */
@media print {
    .head_container {display: none;}
}
