body {
  background: #fff;
  font-size: 16px;
  font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
  min-height: 100vh;
}



.card, .bg-light {
  background-color: white;
}



.bl-1 {
  border-left: 1px solid #888;
}

.katalog-m {
  max-width: 250px;
}

.katalog-s {
  max-width: 100px;
}

th {
  font-size: 20px;
  font-weight: 300;
}

.liste-artikel {
  width: 130px;
}

.rabattpreis {
    color: #ac0c14;
    text-decoration: line-through;
    font-weight: 600;
  }

a.single-link {
  color: #333;
  text-decoration: none;
  font-weight: 300;
  font-size: 1.1rem;
  transition: all .3s ease-out;
  cursor: pointer;
}

.liste-preis {
  color: #333;
  text-decoration: none;
  font-weight: 300;
  font-size: 1.1rem;
  width: 80px;
}

.liste-preis > span {
  text-decoration: line-through;
}

a.single-link:hover {
  color: #000;
  text-shadow: 2px 2px 5px #545e46;
}

.table td, .table th {
  padding: .2rem;
}

.table-liste th, .table-liste td {
  border: 1px solid #888;
  border-collapse: collapse;
  display: table-cell;
}

.table-liste th {
  background-color: #ebebec;
}

.forgotten-pwd{
  display: inline-block;
  background-color: #dadada;
  border-radius: 3px;
  border: 1px solid #dadada;
  padding: 3px 10px;
  margin-top: 10px;
  color: #444;
  transition: all .5s;
  font-size: 13px;
}

.forgotten-pwd:hover{
  background-color: #dfd;
  border: 1px solid #333;
}

.nav-link{
  font-size: 1.2rem;
}

.artikeltypen{
  display: flex;
  justify-content: space-between;
  align-content: center;
  text-align: center;
  margin-bottom: 3rem;
}

a.artikeltyp{
  flex: 1 1 auto;
  padding: 4px 7px;
  font-size: 12px;
  background-color: #888;
  color: #fff;
  text-decoration: none;
  border-radius: 3px;
  transition: all .4s;
  margin: 10px;
}

a.artikeltyp:hover {
  background-color: #9f9;
  color: #000;
}

input[type="checkbox"] {
  display: none;
}

input[type="checkbox"] + label {
  position: relative;
  display: inline-flex;
  cursor: pointer;
  font-family: sans-serif;
  font-size: 1rem;
  line-height: 1.3;
  padding-right: 30px;
}

input[type="checkbox"] + label:before {
  width: 40px;
  height: 20px;
  border-radius: 20px;
  border: 2px solid #ddd;
  background-color: #EEE;
  content: "";
  margin-right: 7px;
  transition: background-color 0.5s linear;
}

input[type="checkbox"] + label:after {
  width: 15px;
  height: 15px;
  border-radius: 15px;
  background-color: #fff;
  content: "";
  transition: margin 0.1s linear;
  box-shadow: 0px 0px 5px #aaa;
  position: absolute;
  left: 2px;
  top: 2px;
}

input[type="checkbox"]:checked + label:before {
  background-color: rgb(85, 211, 85);
}

input[type="checkbox"]:checked + label:after {
  margin: 0 0 0 25px;
}

.clear-numbers input[type="number"] {
  background-color : #fff; 
}

input[type="number"] {
  background-color : #ddffdd; 
}

.bg-zulauf, select.bg-zulauf, input.bg-zulauf {
  background-color: #acf9ff;
}

input[type="number"]:disabled {
  background-color : #dddddd; 
  color: #dddddd;
}

.zulaufdatum {
  background-color: #f4f4f4;
  color: #333;
  font-size: 16px;
  border-radius: 4px;
  border: 1px solid #333;
  padding: 0 8px;
}
.switchbox {
  padding: 15px 20px;
}

label.filter {
  min-width: 180px;
}

label.filter.max {
  width: 100%;
}



.farbbutton {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: inline-block;
  margin-right: 10px;
  border: 1px solid #eee;
}

.klein {
  width: 25px;
  height: 25px;
}

.farbbutton.aktiv{
  border: 5px solid #a1a1a1;
}

.thinborder {
  border: 1px solid #333;
}

#switchbox {
  max-height: 30px;
  overflow: hidden;
  margin-bottom: 30px;
  transition: all .7s ease-in-out;
  cursor: pointer;
}

#switchbox.is-active {
  max-height: 1000px;
}

#switchbox h3{
  color: #333;
  transition: color .4s ease;
}

#switchbox h3:hover{
  color: rgb(0, 168, 0);
}

.insidebox {
  padding: 20px 15px;
}

.treffer {
  background: #f4f4f4;
  padding: 10px 20px;
  border-radius: 10px;
  border: 1px solid #666;
}

.einzelbild {
  width: 100%;
  overflow: hidden;
  margin-bottom: 10px;
}

.single-thumb {
  width: 90%;
  margin-bottom: 10px;
}

.pagethumb {
  width: 100%;
  overflow: hidden;
  filter: drop-shadow(3px 3px 8px #c4c3c3);
  margin-bottom: 8px;
  transition: all .2s ease-out;
}

.pagethumb:hover {
  filter: drop-shadow(2px 2px 3px #444);
}

.thumbtext {
  text-decoration: none;
  color: #666;
  transition: all .2s ease-out;
}

.thumbtext:hover {
  text-decoration: none;
  color: #000;
}

.adressencheck {
  font-size: 1.1rem;
  color: #000;
}

.bg-master {
  background-color: #a04901!important;
}

.bg-order {
  background-color: #074704!important;
}

tr.orderstatus0 {
  background-color: rgb(255, 249, 195);
  color: #000;
}

tr.orderstatus1 {
  background-color: rgb(109, 255, 231);
  color: #000;
}

tr.orderstatus2 {
  background-color: rgb(172, 218, 151);
  color: #000;
}

tr.orderstatus3 {
  background-color: #f8f9fa;
  color: #000;
}

input[type="radio"].portal{
  position: absolute;
  left: -5000px;
}

label.portal {
  position: relative;
  background-color: #ccc;
  color: #666;
  border: 1px solid #666;
  border-radius: 5px;
  padding: 2px 3px;
  margin: 10px 3px 0 3px;
}

input[type="radio"].portal:checked + label{
  background-color: #8f8;
}

.clickable {
  cursor: pointer;
}

.viewblock p {
  border-bottom: 1px #ddd solid;
}

.viewblock p:last-child {
  border-bottom: none;
}

footer {
  width: 100%;
  text-align:center;
  color: #333;
  height: 60px;
  line-height: 60px;
  border-top: 1px solid #ddd;
  margin-top: 150px;
}

footer a {
  color: #333;
  text-decoration: none;
}

footer a:hover {
  color: #000;
  text-decoration: none;
}

a.black {
  color: #111;
  text-decoration: none;
}

a.black:hover {
  color: #000;
  text-decoration: none;
  font-weight: 600;;
}

.spacer {
  height: 100px;
}


.info {
  color:rgb(3, 155, 3)
}

.info:hover {
  color:rgb(2, 114, 2)
}

.match {
  background-color: #c7ffc5;
}

.match-warn {
  background-color: #ff3e3e;
  color: #fff;
}

@media only screen and (max-width: 1200px) {
  h3 {
    font-size: 1.5rem;
  }

  .bl-1 {
    border-left: none;
  }

  .nav-item {
    border-bottom: 1px solid #555;
  }
}

tr.solid-top {
  border-top: 2px solid #444;
}

.notiz {
  background-color: rgb(113, 250, 255);
  font-weight: 600;
  padding: 30px;
  border-radius: 10px;
  font-size: 22px;
}

.rechnung-neu {
  background-color: #ff9166;
}

.rechnung-gedruckt {
  background-color: #cfffb9;
}

.rechnung-exportiert {
  background-color: #ddd;
}

.asp_tr td {
  padding-top: 30px;
  font-weight: bold;
}

.min-counter {
  position: relative;
  top: 24px;
  left: 2px;
  margin-top: -20px;
  color: #888;
  font-size: 13px;
  width: 20px;
  z-index: 100;
}

.artikelansicht tr td:nth-child(odd) {
  padding-right: 10px;
}

.artikelansicht tr td:nth-child(even) {
  padding-right: 40px;
}

input.small-box-input {
  background-color: #fff;
  border: 1px solid #999;
  border-radius: 3px;
  padding: 0;
  text-align: center;
  width: 100px;
}

.suchen {
  text-align: right;
  font-size: 20px;
  cursor: pointer;
}

.search-overlay {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100vw;
  height: 100vh;
  z-index: 50;
  text-align: center;
  display: none;
}

.search-overlay__close {
  cursor: pointer;
}

.search-overlay--top {
  padding: 20px;
  background-color: rgba(54, 233, 203, 1);
}

.search-overlay__active {
  display: block;
}

#search-overlay__results {
  padding-top: 20px;
  text-align: center;
  background-color: rgba(255,255,255, 0.9);
  padding-bottom: 300px;
  height: 2000px
}

#search-overlay__results table {
  margin: 0 auto;
}

.spinner-loader {
  width: 64px;
  height: 64px;
  background: url(../img/loader-animation.gif) no-repeat center center/cover;
  margin-top: 50px;
  margin: auto;
}

table.t800 {
  max-width: 800px;
}

.search-overlay input {
  text-align: center;
  font-size: 26px;
}

.search-overlay .fa-search, .search-overlay .fa-window-close {
  color: orangered;
  margin: 0 20px;

}

.search-overlay .fa-window-close {
  color: #333;
}

.body-no-scroll {

}

li.rechnungsliste {
  list-style: none;
  min-width: 300px;
  margin: 5px 0;
}

.anker {
  position: relative;
  cursor: pointer;
}

.anker > span {
  position: absolute;
  top: -30px;
  left: -250px;
  background-color: #eee;
  border-radius: 7px;
  border: 1px solid #444;
  padding: 8px;
  opacity: 0;
  transition: opacity .5s ease;
  z-index: 100;
}

.anker:hover > span {
  opacity: 1;
}

.anker:hover > span:hover {
  opacity: 0;
}

th a, th a:hover {
  text-decoration: none;
  color: #000;
}

th a:hover {
  color:rgb(2, 114, 2);
}

/* Material */
.switch {
  max-width: 70px;
}


.farbtext {
  display: inline-block;
  width: 100px;
  font-size: 1.5em;
}

.anzeige {
  background-color: white;
  width: 100%;
  padding: 20px;
  border-radius: 5px;
}

.farbzeiger {
  display: inline-block;
  width: 200px;
  border: 1px solid #666;
}

.ania-trash {
  color:#882222;
  transition: color .5s ease;
}

.ania-trash:hover {
  color:#cf2525;
}

.haspointer {
  cursor: pointer;
}

.rabattbadge {
  background-color: #88ff88;
  color: #000;
  border: 1px solid #333;
  border-radius: 5px;
  text-align: center;
}

input[type="number"].hg-rabatt {
  background-color: rgb(255, 194, 170);
  font-weight: bold;
}

.card-clean {
  background-color: #fff;
  border: none;
}

/* Farben */
:root {
  --boxhg: #3d3d3d;
  --boxlight: #f3f3f3;
  --dk-green: #2e7336;
  --braun: #b5842e;
  --bbr: 20px;            /* Box Border Radius */
}

/* Boxen */
.combox {
  padding: 20px 30px;
  background-color: var(--boxhg);
  color: #fff;
  border-radius: var(--bbr);
}

.headerbox {
  background-color: var(--boxlight);
  text-align: center;
  padding: 15px;
  margin-bottom: 25px;
}

.headerbox h3 {
  text-transform: uppercase;
  margin: 0;
}

/* Labels */
.restocklabel {
  background-color: var(--dk-green);
  color: white;
  font-size: 1.4em;
  font-weight: 300;
}

.reducelabel {
  background-color: var(--braun);
  color: white;
  font-size: 1.4em;
  font-weight: 300;
  position: absolute;
  top: 0;
  left: 15px;
  width: 89%;
}

.b20 {
  margin-bottom: 20px;
}

.input-group-text {
  background-color: #fff;
}

.btn {
  border-radius: 0;
}

.m0 {
  margin: 0;
}

.spacer25 {
  height: 25px;
}

a.textlink {
  background-color: #333;
  color: #fff;
  padding: 3px 10px;
  text-decoration: none;
}

.navbar-brand {
  text-transform: uppercase;
}

.rabatt {
  display: inline;
  text-decoration: line-through;
}

.number-select-container {
  display: flex;
  justify-content: center;
  text-align: center;
  text-align-last: center;
  position: relative;
  background-color: #fff;
  width: 100%;
  height: 25px;
  -webkit-appearance: none;
  -moz-appearance: none;
  text-indent: 1px;
  text-overflow: '';
  border: none;
}

.select-box {
  border: none;
  background-color: #fff;
  color: #333;
  text-align: center;
  text-align-last: center; 
  width: 100%; 
  -webkit-appearance: none;
  -moz-appearance: none; 
}

.select-fehler {
  background-color: #ffa3a3;
}

.light-gray {
  color: lightgray;
}

.hidethis {
  display: none;
}

.hgRot {
  background-color: rgb(248, 146, 146);
}
.hgGrau {
  background-color: #a4a4a4;
}
.hgGruen {
  background-color: #d2e2bb;
}

.table-liste thead th {
  border: 1px solid #aaa;
  border-collapse: collapse;
}

.max200 {
  max-width: 200px;
}

.farbanzeiger {
  display: flex;
  flex-direction: row;
}

.farbanzeiger-spalte {
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  padding-right: 8px;
}

.flexspalte {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  text-align: center;
}

.spacer {
  height: 25px;
}

.farbanzeiger-zeile {
  display: flex;
  flex-direction: row;
  justify-content: center;
  text-align: center;
  align-items: center;
}

.farbfeld {
  display: flex;
  flex-direction: row;
  justify-content: center;
}

.farbfeld-links {
  display: flex;
  flex-direction: row;
  justify-content: left;
}

.farbname {
  text-transform: uppercase;
}

.form-klein {
  display: block;
  width: 100%;
  border: 1px solid #333;
}

.form-klein:disabled {
  background-color: #fff;
}

.form-group {
  margin-bottom: .5rem;
}

label {
  margin-bottom: 0;
}

.thinbox {
  border: 1px solid #333;
  padding: 8px;
  width: 100%;
  margin-bottom: 1rem;
  display: flex;
  align-items: center;
  flex-direction: row;
  justify-content: space-between;
}

.kasten {
  border: 1px solid #333;
  padding: 8px;
  margin-bottom: 20px;
}

.boxuebersicht {
  width: 80px;
  padding: 5px 8px;
  border: 1px solid #333;
  border-radius: 5px;
  display: inline-block;
  margin: 4px;
}

.vertikal {
  flex-direction: column;
  align-items: flex-start;
}

a.mailbutton {
  padding: 4px 10px;
  background-color: #fff;
  font-size: 14px;
  text-decoration: none;
  color: #333;
  border: 1px solid #333;
  border-radius: 5px;
  transition: all .4s ease;
}

a.mailbutton:hover{
  background-color: #66bd62;
  color: #fff
}

#preview {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

#preview img {
  width: 150px;
  margin-bottom: 10px;
  margin-right: 10px;
  vertical-align: middle;
}

#fileElem {
  display: none;
}

#dropzone {
  border: 2px dashed #ccc;
  border-radius: 20px;
  font-family: sans-serif;
  padding: 20px;
}

.loeschcircle {
  color: #fff;
  font-size: 2em;
  position: relative;
  margin-top: -70px;
  margin-left: 20px;
  transition: all .4s ease;
}

a.loeschcircle:hover {
  color: #f33;
}

.bildcontainer {
  display: flex;
  flex-direction: column;
}

.custom-select {
  text-align: center;
}

.custom-select option {
  text-align: center;
}

@media only screen and (max-width: 992px) {
  h3 {
    font-size: 1.25rem;
  }

}