@charset "utf-8";
/* CSS Document */

/* ================= SCHRIFTARTEN HOLEN =============== */
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@100;300;900&display=swap');
	
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@100;300;900&family=Lora&display=swap');

/* ================= STANDARD DEFINITIONEN =============== */

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
   display: block;
}

 * {
   padding: 0;
   margin: 0;
   box-sizing: border-box;
   font-size: 100%;
 }

 body > * {
   font-family: 'Lato', sans-serif;
   line-height: 1.4;
   
 }

 img {
   max-width: 100%;
   height: auto;
 }

 h1, h2, h3, h4 {
   font-family: 'Lato', sans-serif;
   line-height: 1;
	
 }

 h1 {
   font-size: 2.5rem;
 }

 h2 {
   font-size: 1.5rem;
 }

 h3 {
   font-size: 1.2rem;
 }

 h4 {
   font-size: 1rem;
 }

 p {
   line-height: 1.4;
 }

a {
  color: #0071BC;
  font-weight: bold;
}

a:hover {
  color:#11E278;
}

i {
  padding-left: .5rem;
}
select {
	font-family: 'Lato', sans-serif;
	min-width: 320px;
}
input.zahlen {
	min-width: 320px;
}

/* ############ Hero ############ */
.hero {
  background: url("../bilder/aus_6.jpg") no-repeat center right;
  background-size: cover;
  color: #fff;
  font-size: 20px;
  text-align: center;
  display: grid;
  grid-template-columns: 10px 2fr 10px;
  grid-template-rows: .5fr 1fr 20px;
  grid-gap: 20px;
 }
.hero img{
	
	border-radius:10px;
  padding: 0.5rem;
	  grid-column: 2 / 3;
  grid-row: 1 / 2;
}
 
.hero article {
  grid-column: 2 / 3;
  grid-row: 2 / 3;
}

.hero h1 {
  font-size: 2rem;
  text-transform: uppercase;
}

 

/* ############ Navigation ############ */
.logo {
  max-width: 90px;
 }

.navWrap {
  position: -webkit-sticky;
  position: -moz-sticky;
  position: -o-sticky;
  position: -ms-sticky;
  position: sticky;
  top: 0;
  z-index: 99;
  height: 48px;
  width: 100%;
  background-color: #212f54;
  border-bottom: 1px solid #e0e5eb;
  box-shadow: 0px 1px 8px #223055;
  padding: 0 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

 .navWrap svg {
		 max-height: 80%;
	 }



input#navToggle {
  display: none;
}

input#navToggle ~ label {
  position: relative;
  padding: 0.25rem;
  width: 2rem;
  height: 1.25rem;
  height: 2rem;
}

input#navToggle ~ label > span,
input#navToggle ~ label > span::before,
input#navToggle ~ label > span::after {
  content: "";
  display: block;
  position: absolute;
  top: .75rem;
  height: 0.125rem;
  width: 1.75rem;
  opacity: 1;
  background: #fff;
  transition: 0.14s ease-in-out;
}

input#navToggle ~ label > span::before {
  top: -0.5rem;
}

input#navToggle ~ label > span::after {
  top: 0.5rem;
}

#navToggle:checked ~ label > span {
  width: 0;
  background: rgba(18, 18, 18, 0);
}

#navToggle:checked ~ label > span::before {
  transform: rotateZ(45deg);
  top: 0;
}

#navToggle:checked ~ label > span::after {
  transform: rotateZ(-45deg);
  top: 0;
}

#navToggle:checked ~ nav {
  left: 0;
}

nav {
  position: absolute;
  z-index: -1;
  top: 3.0rem;
  left: -110%;
  width: 100%;
  transition: 0.22s ease-in-out;
}

nav::after {
  content: "";
  position: absolute;
  top: 0;
  z-index: -1;
  height: 100vh;
  width: 100vw;
  background-color: #0071BC;
  background-size: cover;
}

nav ul {
    list-style-type: none;
}

nav ul li a {
  display: inline-block;
  text-decoration: none;
  width: 100%;
  padding: .75rem 1rem;
  color: #fff;
  border-bottom: solid 1px rgba(255,255,255,.5);
  transition: 0.14s ease-in-out;
}

nav ul li a:hover {
  color: #0071BC;
  background: #e0e5eb;
}

nav ul li:last-of-type::before {
  content: "";
  display: block;
  padding: .5rem;
  }



 /*######### CMS Index ###############*/
.titellink a {
	color:#212f54;
	
}
.titellink a:hover {
  color:#41F6A7;
}

.titel{
	display:flex;
	align-self: center;
	padding:10px 100px 10px 100px;
}

main#container{
display: flex;
flex-direction: column;	
flex-wrap:wrap;
justify-content: center;
align-content: center;
padding: 15px;
max-width: 80vw;
margin: 0 auto;
  box-shadow: 0px 1px 8px #223055;	
}
	

.vorhEintr{
display: flex;
flex-direction: column;	
justify-content: center;
align-content: center;
margin:0 auto;
padding: 15px;
min-width: 60vw;	
}

.indEintr{
display:flex;
align-self: center;
 /*flex-grow: 1;  
 margin:20px; */
	padding:15px;
	
}
 
.disp_personalien, .disp_projekt, .absenzen{
	margin: 0px 20px 0px 20px;
  	padding: 0px 10px 0px 10px;
		} 

.delete{
	color:rgba(248,63,66,0.80);
}


.fields{
	padding:10px 0px 10px 0px;
	min-width: 400px;
}

.fields select{
	padding: 5px;
	margin:auto;
	font-family: 'Lato', sans-serif;
}

.fields h4{
	margin-bottom: 10px;
}

input.fields {
  padding: 5px;

}

.btn{
	padding:5px;
}
.neueintrag{
	margin-bottom: 10px;
}

section.personalien1{
	margin:0 auto;
}

.zahlen {
		font-family: 'Lato', sans-serif;
	min-width:150px;
}

/* ############ Start Abschnitt Links ############ */
.cta {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  color: #fff;
  margin: 2rem auto;
  padding: 2rem;
  text-shadow: 1px 1px 1px rgb(0 0 0 / 50%);
	background-Color: #0071BC;
  width:100vw;
}

.cta h1 {
  margin-left: 1rem;
}

.cta p {
  border-left: solid 1px #fff;
  padding-left: 1rem;
  max-width: 700px;
}


.cta a{
	background-color: aliceblue;
	margin: 1rem 1rem 1rem 1rem;
}


#links{
	margin:5px 5px 5px 20px;
	padding: 1rem 1rem 1rem 1rem;
}
 
form img {
	max-width: 120px;
}

form {
	margin: 0 auto;
}

/*######### START  ###########*/

 
.formstart {
  display:flex; 
  align-content: center;	
  background-color: #223055;
  color: #fff;
	margin-bottom: 5px;
  }

.formstart h2 {
	font-size: 2rem;
	margin: auto;
   

}
.form p {
  font-weight: 300;
  padding-bottom: 1rem;
}

form#contactForm {
	 display: flex;
  align-items: flex-start;
  justify-content: space-between;
 	max-width: auto;
	max-height: 200px;
    margin: auto;
}

.ausgabe{
	display:flex;
	align-content: center;
	align-self: center;
	
}
.suchwahl{
padding: 5px 30px 5px 10px;
}
.suchen
{
	padding: 5px;
}
.contactForm div {
	margin: 15px 30px 15px 30px;
}

.contactForm input[type="submit"]:active {
	 
	background-color: rgba(0,113,188,1.00);
  box-shadow: 1px 1px 6px rgba(255,255,255,.6), 0px 0px 4px rgba(255,255,255,.8);
}
 
.submit{
	margin-top: 25px;
	padding: 7px 30px 7px 30px;
}

section.personalien {
	display:flex;
	flex-direction: column;
	justify-content:center;
	margin:0 auto ;
	Padding-top: 1rem;
	min-width: 300px;
}

section.personalien img{
	max-width: 100px;
}

.projekt {
     
	margin: 0 auto;
	display:flex;
	flex-direction: column;
	justify-content: center;
	 Padding-top: 1rem;
	min-width: 300px;
	}

/*############## Ziele - Beurteilungen ##############*/

main#container1{
display: flex;
flex-direction: column;	
flex-wrap:wrap;
justify-content: center;
align-content: center;

}


#beurteilung {
  background-color: #212f54;
  border-bottom: 1px solid #e0e5eb;
  box-shadow: 0px 1px 8px #223055;
  padding: 0 1.5rem;
  display: flex;
  align-self: center;
  color:aliceblue;
  justify-content: center;
  width: 100%;	
	
	
}

.neueziele{
display:flex;
flex-direction: column;	
align-self: center;
justify-content: center;	
padding:15px;
}

.indEintrz {
display: flex;
flex-direction: column;	
justify-self: center;

margin:0 auto;
padding: 15px;
 
}
.personalien{
display: flex;
flex-direction: column;
justify-self: flex-start;
max-width:400px;	
}

.namenswahl{
	padding: 5px;
}
.schicken{
	margin-top: 25px;
	padding: 7px 15px 7px 15px;
}

.boxen{
	min-height: 100px;
	min-width: 400px;
}

/*############## LBG #####################*/

.schicken1{
	margin-top: 25px;
	padding: 7px 10px 7px 10px;
	max-width: 320px;
}

/*################ Kalender  ################*/

#calendar.container{
	display:flex; 
	flex-direction: column;
	justify-content: space-between;
	margin-top:80px;
	}

#calendar div{
		 height:100px;
		 width: 200px;
	 }	 
 
th{
	height:30px;
	text-align: center;
	font-weight: 700;
	width:60px;
	}
td{
	height:100px;
	
}
#today{
	background-color:#212f54;
	color:aliceblue;
}
	
th:nth-of-type(6),td:nth-of-type(6){
	background-color:#BFCBEA;
	font-weight:600;
}
th:nth-of-type(7),td:nth-of-type(7){
	background-color: #A0B2E0;
	font-weight:600;
}
.tag{
	font-size: 12;
}

h2.monate {
	font-size: 15;
	min-width: 400px;
}

section.monate {
	display: flex;
	align-self: center;
	padding: 15px;
	min-width: 400px;
}

.table{
	align-self: flex-end;
}

.table-bordered {
	 box-shadow: 0px 1px 8px #223055;
}

/* ############ Home  ############ */
.home {
  padding: 1rem;
  margin: auto;
  max-width: 1200px;
}

.home article {
  margin: 2rem auto;
  width: 80%;
  max-width: 1000px;
}

.home h1 {
  color: #0071BC;
  font-size: 3rem;
  margin-left: 1rem;
}

.home article p {
  border-left: solid 1px #dedede;
  padding-left: 1rem;
}

.homeList {
  list-style-type: none;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  grid-gap: 1rem;
}

.homeList li {
  background-color: rgba(255,255,255,.9);
  border-radius: 6px;
  border: solid 1px #dedede;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
  padding: 1.8rem;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto minmax(140px, 1fr) auto;
}

.homeList h3, .homeList img {
  grid-row: 1 / 2;
  grid-column: 1;
}

.homeList h3 {
  background-color: rgba(255,255,255,.5);
  color: #fff;
  padding: .5rem;
  margin-bottom: 1rem;
  text-align: center;
  text-shadow: 1px 1px 2px rgba(51,51,51,.7);
  align-self: end;
}

.home a {
  border-radius: 3px;
  background-color: #0071BC;
  color: #fff;
  height: 2rem;
  margin-top: 1rem;
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
}

.home a:hover {
  background-color: #333;
}

/*################ Footer #############*/
footer {
  position: -webkit-sticky;
  position: -moz-sticky;
  position: -o-sticky;
  position: -ms-sticky;
  position: sticky;
bottom: 0;
  z-index: 99;
  height: 35px;
  width: 100%;
   background-color: #212f54;
  border-bottom: 1px solid #e0e5eb;
  box-shadow: 0px 1px 8px #223055;
	color:aliceblue;	
  padding: 0 1.5rem;
  display: flex;
  align-items: center;
 
  
}

 footer a {
   
  color: aliceblue;
   
}

footer a:hover {
  color: burlywood;
}


/*################## CMS Table ####################*/

table.maincms {
		border-collapse: collapse;
		margin-left:1em;
		text-align: center;
		width: 90%;
		}

th.maincms {
		background-color:rgba(143,113,0,0.5);
		border:1px solid rgba(143,113,0,0.5);
		padding:3px;
		}

#cms tr .untertitel{
		background-color:rgba(143,113,0,0.3); 
		border:1px solid rgba(143,113,0,0.5);
		font-size:1.2rem; 
		font-weight:bold;
		}

#cms tr td {
		border:1px solid rgba(143,113,0,0.5);
		padding:3px;
		}

 






/* ############   Media Query, (min-width: 700px) ############ */
 @media screen and (min-width: 700px) {
  /* #########  Hero Large Screen ######### */
  header.hero {
    background: url("../bilder/aus_6.jpg") no-repeat center left;
    background-size: cover;
    text-align: left;
    grid-template-columns: repeat(6, 1fr);
    grid-template-rows: .5fr 1fr .5fr;
    align-items: center;
  }	 
  .navwrap h2 {
	color:aliceblue; 
    margin: 0 0 0 auto;
    grid-row: 2 / 3;
  }

  .hero article {
   max-width: 1000px;
   grid-column: 3 / 6;
  }

/* ######### Navigation, Large screen rules ######### */
 .navWrap {
    display: grid;
    grid-template-columns: 100px minmax(auto, 1100px);
    justify-content: center;
    height: auto;
  }

	 .navWrap svg {
		 max-height: 100px;
	 }	 
	 
  .navToggleLabel {
    display: none;
  }

  nav {
    position: initial;
  }

  nav ul {
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }

  nav ul li a {
    border-bottom: none;;
  }

  nav ul li a:hover {
    background: transparent;
  }

  nav::after, nav ul li:last-of-type::before {
    display: none;
    padding: initial;
  }

  nav .btn {
    width: auto;
    background: #0071BC;
    color: #fff;
    letter-spacing: normal;
    text-shadow: none;
    box-shadow: none;
  }

  nav.btn:hover {
    box-shadow: inset 0 0 5px #13b1e7;
    background-color: #223054;
  }
 .problem ul {
    margin-left: 2rem;
    padding-right: 1rem;
  }

  .problem img {
    display: none;
  }
	 
 
}
/* #########  Home Large screen rules ######### */
  .homeList {
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  }

  .home article {
   width: 90%;
   display: flex;
   align-items: center;
  }

  .home h1 {
    margin: 0 1rem 0 0;
  }

  .home p {
    flex: 3;
  }

/* ############   Media Query, (min-width: 700px) ############ */
 @media screen and (min-width: 950px) {
  /* #########  Hero Large Screen ######### */


main#container{
display: flex;
flex-direction: column;	
flex-wrap:wrap;
justify-content: center;
align-content: center;
padding: 15px;

}

