/*
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');
*/

body {
    background-color: rgb(240, 244, 248);
 }
 body, p, table, th, td {

    font-family: "Inter", 'Helvetica', sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    font-size: 12px;
    color: #726a84;
}


input, select {
    font-family: "Inter", 'Helvetica', sans-serif;
    font-size: 12px;    
    color: #222222;
    width: 100%;
}

.select-small {
  padding: 5px !important;
  background-size: 1rem !important;
  height: 2.5rem;
  font-size: 11px;
}

.labeling {
  font-size: 11px;
  margin-bottom:8px;
  text-align: left;
  width: 100%;
  font-weight: 600;
}

textarea {
    border:1px solid #c0c4c9;
}

table {
    width: 100%;
}

td, th, tr {
  padding: 10px;
  border-bottom: 1px solid lightgrey;
  vertical-align: top;
}

.status-visuell {
  td { border-right: 2px solid #EFEFEF; }
  td:first-child { border-radius: 10px 0px 0px 0px; }  
  td:last-child { border-radius: 0px 10px 0px 0px; border-right: 0px; } 
}

tr:hover {
  background-color:#e2e6ec !important;
}

.niceTable td, tr {
  padding: 10px;
  border-bottom: 1px solid lightgrey;
  vertical-align: top;
}

.dullTable td, tr, tr:hover {
  padding: 20px;
  border-bottom: 1px solid lightgrey;
  vertical-align: top;
  background-color: transparent !important;
  border-radius: 0 0 10px 10px;
}

.sedcard td, tr {
  background: #FFF;
  border-bottom: 0px !important;
  vertical-align: top;
}


th { 
  color: grey;
  font-weight: 520;
  text-align: left;
}

fieldset {
    border: 1px solid lightgrey;
    font-weight: normal;
    border-radius: 5px;
    padding: 25px;
    width: 80%;
}

legend {
  color: grey;
  font-weight: normal;
}

h1 {
    font-family: 'Helvetica', sans-serif;
    font-weight: 550;
    font-size: 30px;
    color: #726a84;
    line-height: 1.4;
}

h2, h3, h4, h5, h6 {
    font-family: 'Helvetica', sans-serif;
    font-weight: 500;
    font-size: 16px;
    color: #726a84;
    line-height: 3;
}

a, a:hover, a:visited {
    !display: block;
    font-family: 'Helvetica', sans-serif;
    font-size: 12px;
    color: #1e75ff;
    font-weight: 550;
    text-decoration: none;
}

.buttonStyle, .buttonStyle:hover {
  font-family: 'Helvetica', sans-serif;
  font-size: 11px;
  padding: 10px;
  border-radius: 5px;
  border: 0;
  background-color: #1e75ff;
  color: #FFF !important;
  font-weight: normal !important;
}

.red {
  color:red !important;
}

.green {
  color:green !important;
}

.grey {
  color:rgb(203, 204, 203) !important;
}

.post-it {
  background:#FEF9E7;
}

.infoEltern {
  background:#e7f1fe !important;
}

.small {
  font-size: 10px;
  color: grey;
}


.rund {
border-radius: 100%;
-webkit-border-radius: 100%;
-moz-border-radius: 100%;
box-shadow: 0 4px 4px 0 rgba(0,0,0,0.25);
}

[data-initials]:before {
background: #099bdd;
color: white;
opacity: 1; 
content: attr(data-initials); 
display: inline-block; 
font-weight: 600; 
border-radius: 50%; 
vertical-align: middle; 
margin-right: 0.5em; 
width: 50px; 
height: 50px; 
line-height: 50px; 
text-align: center; 
}

.wrapper {
    width: 80vw;
    display: inline;
    
}

.w100 {
  display: inline-block;
  width: 80%;
}

.w95 {
  float: left;
  margin-left: auto;
  width: 95%;
}

.w90 {
  float: left;
  margin-left: auto;
  width: 90%;
}

.w80 {
  float: left;
  margin-left: auto;
  width: 80%;
}

.w75 {
  float: left;
  margin-left: auto;
  width: 75%;
}

.w50 {
  float: left;
  !margin-left: auto;
  !text-align: left;
  width:50%;
}

.w25 {
  float: left;
  margin-left: auto;
  !text-align: left;
  width:25%;
}

.w20 {
  float: left;
  margin-left: auto;
  !text-align: left;
  width:20%;
}

.w5 {
  float: left;
  margin-left: auto;
  !text-align: left;
  width:5%;
}

.w33 {
  float: left;
  margin-left: auto;
  !text-align: left;
  width:33.3%;
}

.m20 {
  width: 100%;
  margin-bottom: 15px;
  display: flex;
	align-items: center; /* Vertikale Zentrierung */
	justify-content: left; /* Horizontale Zentrierung */
}

.opa50 {
  opacity: 50%;
}

.opa30 {
  opacity: 30%;
}

.opa15 {
  opacity: 15%;
}
/* Spezielle Styles für Modell Cards Pre-Layout */

.bescheinigungen-status {
  margin-top: 10px;
  padding: 15px;
}

/* Add some padding inside the card container */
.modellcontainer {
  padding: 15px;
  margin: auto;
}

.modellcard {
  float: left;
  margin-left: 5px;
  margin-bottom: 10px;
  padding-bottom: 15px;
  text-align: center;
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2);
  transition: 0.3s;
  border-radius: 5px; /* 5px rounded corners */
  background-color:#FFF;
  filter: grayscale(100%);
}

.optionen-liste {
  width:100%;
  height:450px;
  overflow: scroll;
  margin-left: 5px;
  margin-bottom: 10px;
  padding-bottom: 15px;  
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2);
  border-radius: 5px; /* 5px rounded corners */
  background-color:#FFF;
}

/* On mouse-over, add a deeper shadow */
.modellcard:hover {
  box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2);
  filter: grayscale(0%);
}

/* Add rounded corners to the top left and the top right corner of the image */
.modellimg {
    border-radius: 5px 5px 0 0;
  }

.modellimg-15grey {
  border-radius: 5px 5px 0 0;
  filter: grayscale(100%);
  opacity: 15%;
}


.modellcard_projekt {
    box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2);
    transition: 0.3s;
    border-radius: 5px; /* 5px rounded corners */
    background-color:#FFF;
    margin: auto;
  }

.modellcard-leer {
  float: left;
  text-align: center;
  padding-top: 80px;
  margin-left: 5px;
  margin-bottom: 5px;
  background-color: transparent;
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2);
  opacity: 30%;
  width: 200px;
  height: 400px;
}

.modellcard-leer:hover {
  opacity: 100%;
}

/* Statistik Container */

* {
    box-sizing: border-box;
  }

#statistik-block {
  width:100%;
  display: table-cell;
	vertical-align: middle;
  !padding: 25px;
  text-align: center;
  margin-bottom: 30px;
}

.statistik-card {
    float: left;
    min-width: 200px;
    min-height: 200px;
    padding: 30px;
    padding-top: 10px;
    box-shadow: 0 2px 2px 0 rgba(137, 137, 137, 0.2);
    transition: 0.3s;
    border-radius: 10px; /* 5px rounded corners */
    background-color:#FFF;
    margin-top: 10px;
    margin-right: 10px;
    text-align: center;
  }

.statistik-card-inner {
    margin: auto;
}

.statistik-big-blue {
    font-size: 70px;
    font-weight: bold;
    color: #4588f3;
}

.statistik-med-blue {
    font-size: 16px;
    color: #4588f3;
}

.statistik-big-orange {
    font-size: 70px;
    font-weight: bold;
    color: rgb(252, 189, 89);
}

.statistik-med-orange {
    font-size: 16px;
    color: rgb(252, 189, 89);
}

.statistik-big-yellow {
    font-size: 70px;
    font-weight: bold;
    color: rgb(53, 210, 53);
}

.statistik-med-yellow {
    font-size: 16px;
    color: rgb(53, 210, 53);
}

.statistik-big-red {
    font-size: 70px;
    font-weight: bold;
    color: rgb(210, 77, 53);
}

.statistik-med-red {
    font-size: 16px;
    color: rgb(210, 77, 53);
}





/* Statistik Container Ende */

.ribbon {
  font-size: 9px;
  color: #fff;
  width: 80px;

}
.ribbon {
  --f: .5em; /* control the folded part*/
  --r: .8em; /* control the ribbon shape */
  
  position: relative;
  left: 100px;
  top: calc(-1*var(--f));
  padding: .2em;
  background: #BF4D28;
  border-left: var(--f) solid #0005;
  border-bottom: var(--r) solid #0000;
  clip-path: polygon(var(--f) 0,100% 0,100% calc(100% - var(--r)),calc(50% + var(--f)/2) 100%, var(--f) calc(100% - var(--r)),var(--f) var(--f),0 var(--f));
}

/* The flip card container - set the width and height to whatever you want. We have added the border property to demonstrate that the flip itself goes out of the box on hover (remove perspective if you don't want the 3D effect */
.flip-card {
  float: left;
  margin-left: 5px;
  margin-bottom: 5px;
  background-color: transparent;
  width: 200px;
  height: 400px;
  perspective: 900px;
}

/* This container is needed to position the front and back side */
.flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 0.8s;
  transform-style: preserve-3d;
}

/* Do an horizontal flip when you move the mouse over the flip box container */
.flip-card:hover .flip-card-inner {
  transform: rotateY(180deg);
}

/* Position the front and back side */
.flip-card-front, .flip-card-back {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden; /* Safari */
  backface-visibility: hidden;
}

/* Style the front side (fallback if image is missing) */
.flip-card-front {

}

/* Style the back side */
.flip-card-back {
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2);
  transition: 0.3s;
  border-radius: 5px; /* 5px rounded corners */
  background-color:#FFF;
  transform: rotateY(180deg);
  overflow: scroll;
}

.buchungsdatum {
    text-align:left;
    box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2);
    transition: 0.3s;
    border-radius: 5px;
    padding:6px;
    background-color:#EEEEEE;
    margin-bottom:10px;
    font-size: 9px;

}

.content_div {
    width: 100%;
    height: 100%;
    transition: all 0.5s ease;

}


.top-container {

    padding: 30px;
    padding-left: 70px;
    background-color:#FFF;

}

.bottom-container {
    border-top: 1px solid rgb(241, 234, 234);
    padding: 70px;
    padding-top: 10px;
    background-color:rgb(240, 244, 248);
    width: 100%;
    height: 100%;

}

/* Style the tab */
.tab {
    overflow: hidden;
    border-bottom: 1px solid rgb(228, 227, 227);
    width: 85%;
  }
  
  /* Style the buttons that are used to open the tab content */
  .tab button {
    border-bottom: 1px solid #ccc;
    background-color: inherit;
    float: left;
    border: none;
    outline: none;
    cursor: pointer;
    padding: 14px 16px;
    transition: 0.3s;
  }
  
  /* Change background color of buttons on hover */
  .tab button:hover {
    background-color: rgb(237, 237, 237);
    border-bottom: 1px solid #1e75ff;
  }
  
  /* Create an active/current tablink class */
  .tab button.active {
    color: #1e75ff;
    border-bottom: 1px solid #1e75ff;
  }
  
  /* Style the tab content */
  .tabcontent {
    display: none;
    padding: 10px 5px;
    border-top: none;
    width: 100%;
    height: 100%;
    transition: 0.3s;
  }

  /* Progress Bar */ 
  
  .box {
    float: left;
    min-width: 200px;
    min-height: 200px;
    padding: 30px;
    padding-top: 10px;
    box-shadow: 0 2px 2px 0 rgba(137, 137, 137, 0.2);
    transition: 0.3s;
    border-radius: 10px; /* 5px rounded corners */
    background-color:#FFF;
    margin-top: 10px;
    margin-right: 20px;
    text-align: center;  
  }

  .box .percent
  {
    width:150px;
    height:150px;
    position:relative;
  }
  .box .percent svg
  {
    width:150px;
    height:150px;
    position:relative;
  }
  .box .percent svg circle
  {
    width:150px;
    height:150px;
    fill:none;
    stroke-width:10;
    stroke:#000;
    transform:translate(5px,5px);
    stroke-dasharray:440;
    stroke-dashoffset:440;
    stroke-linecap:round;
  }
  .box .percent svg circle:nth-child(1)
  {
    stroke-dashoffset:0;
    stroke:rgb(221, 223, 225);
  }
  
  .box .percent .num
  {
    top:0;
    left:0;
    width:100%;
    height:100%;
    display:flex;
    justify-content:center;
    align-items:center;
    position:absolute;
    color:#111;
  }
  .box .percent .num h2
  {
    font-size:42px;
    font-weight:600;
  }
  .box .percent .num h2 span
  {
    font-size:20px;
  }
  .box .text
  {
    padding 10px 0 0;
    color:#999;
    font-weight:600;
    letter-spacing:0.5px;
  }

  #topNav {
    border-bottom: 1px solid rgb(241, 234, 234);
    box-shadow: 4px 4px 8px  rgba(0,0,0,0.2);
    background-color: #FFF;
    height: 50px;
    padding-top: 15px;
    padding-right: 20px;
    margin: auto;
    text-align: right;
  }

  .topNav {
    font-size: 20px;
    padding-left: 15px;
  }

.invButton {
    background: transparent;
    border: none !important;
    font-size:0;
    box-shadow: 0 0 0 0;
    border-radius: 0;
  }

  .pagination {
    display: inline-block;
  }
  
  .pagination a {
    color: #726a84;
    float: left;
    padding: 8px 16px;
    text-decoration: none;
    border: 1px solid #ddd;
  }
  
  .pagination a.active {
    background-color: #1e75ff;
    color: white;
    border: 1px solid #1e75ff;
  }
  
  .pagination a:hover:not(.active) {background-color: #EFEFEF;}
  
  .pagination a:first-child {
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
  }
  
  .pagination a:last-child {
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
  }

  .align-right {
    width: 100%;
    text-align: right;
  }

  /* The Modal (background) */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 100000; /* Sit on top */
  padding-top: 100px; /* Location of the box */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
  
}

/* Modal Content */
.modal-content {
  background-color: #fefefe;
  margin: auto;
  padding: 20px;
  border: 1px solid #888;
  width: 80%;
  box-shadow: 0 2px 2px 0 rgba(137, 137, 137, 0.2);
  transition: 0.3s;
  border-radius: 10px; /* 5px rounded corners */
}

/* The Close Button */
.close {
  color: #aaaaaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
}

  