form p {
    margin-bottom: 12px;
}
@media (max-width: 600px) {
    table, th, td {
        font-size: 0.9em;
    }
    h1 { font-size: 1.3em; }
    button, a { font-size: 0.9em; padding: 5px 10px; }
}

.icon-link {
        text-decoration: none;
        font-size: 18px;
      }

.box { 
        width:320px;
        padding:20px;
        border: 1px solid black;
        border-radius:5px;
        box-shadow: 2px 2px 3px #686868;
        background: linear-gradient(-0deg, #6b3, #cf9);      
      }

.article {
    border: 1px solid #888;
    padding: 10px;
    margin-bottom: 15px;
    border-radius:10px;
    background: linear-gradient(to bottom right, #fffacd, #ccffcc);
}

.article-footer {
    font-size: 0.85em;
    color: #555;
    margin-top: 8px;
    border-top: 1px dashed #ccc;
    padding-top: 4px;
}

.boxout { 
        width:320px;
        height:20px;
        padding:20px;
        border: 1px solid black;
        border-radius:5px;
        box-shadow: 2px 2px 3px #686868;
        background: linear-gradient(-0deg, #6b3, #cf9);      
      }

.boxtxt {
  background: rgba(0,0,0,0.6); /* halbtransparentes Schwarz */
  color: #fff; /* weiße Schrift */
  padding: 1rem;
  border-radius: 8px;
  text-align: center;
}

.divboxtxt {
  background: rgba(0,0,0,0.6); /* halbtransparentes Schwarz */
  color: #fff; /* weiße Schrift */
  padding: 0.5rem;
  border-radius: 8px;
  text-align: center;
}

.boxbld {
  background: rgba(0,0,0,0.8); /* halbtransparentes Schwarz */
  color: #fff; /* weiße Schrift */
  padding: 1rem;
  border-radius: 8px;
  text-align: center;
}

.btns {
         margin: 4px;
         border: 2px outset mediumgrey;
         padding: 8px;
         border-radius:1px;
         background-color: #33d;
         box-shadow: 2px 2px 3px #686868;
         color:#eee;
         width:80px;
     }

.btn-link {
         text-decoration: none;
         margin: 4px;
         border: 2px outset black;
         padding: 8px;
         border-radius:1px;
         background-color: #33d;
         box-shadow: 2px 2px 3px #686868;
         color:#eee;
         width:80px;
     }

.btn-del {
         margin: 4px;
         border: 2px outset mediumgrey;
         padding: 8px;
         border-radius:1px;
         background-color: #d9534f;
         box-shadow: 2px 2px 3px #686868;
         color:#fff;
         width:80px;
     }

.btnl {
         margin: 4px;
         border: 2px outset mediumgrey;
         padding: 8px;
         border-radius:1px;
         background-color: #33d;
         box-shadow: 2px 2px 3px #686868;
         color:#eee;
         width:150px;
     }

.btnwl {
   margin:15px;
   display:block;
   padding:6px;
   font-size:clamp(1.0rem, 2vw, 1.2rem); 
   font-family:raleway;
   font-weight:bold;
   text-decoration:none;
   text-align:center;
   color:#111;
   border: 4px outset #ca0;
   border-radius:2px;
   background-color: #db0;
   box-shadow: 3px 3px 5px #686868;
   width:250px;
  }

.btnwl:hover {
   border: 4px inset #ca0;
   box-shadow: 1px 1px 3px #686868;
  }

.btnf {
         text-decoration: none;
         margin: 4px;
         border: 2px outset mediumgrey;
         padding: 8px;
         border-radius:1px;
         background-color: #33d;
         box-shadow: 2px 2px 3px #686868;
         color:#eee;
         width:230px;
     }

.btnd {
         margin: 1px;
         border: 2px outset mediumgrey;
         padding: 4px;
         border-radius:1px;
         background-color: #33d;
         box-shadow: 2px 2px 3px #686868;
         color:#eee;
         width:115px;
     }

.bbtn {
         border: 2px outset mediumgrey;
         padding: 2px;
         border-radius:1px;
         background-color: #33a;
         box-shadow: 4px 4px 6px #686868;
         color:#eee;
         width:250px;
         height:60px;
         font-weight:bold;
         font-size:15px;
     }

.eing {
        border: 1px solid black;
        border-radius:3px;
        background-color: #def; 
        box-shadow: 1px 1px 3px #686868;
        
      }

.erfassen {
        position:fixed;
        padding: 8px;
        width: 300px;
        border: 1px solid black;
        border-radius:3px;
        background-color: #c8f7c5; 
        box-shadow: 1px 1px 3px #686868;
      }

.lbtn {
        text-decoration: none;
        color: #eee;
      }

.icon-cell {
    text-align: center;
    vertical-align: middle;
}

.icon {
    font-size: 25px;
}

/* Toggle-Switch CSS */
.switch {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 24px;
}

.switch input { 
  opacity: 0;
  width: 0;
  height: 0;
}

.slider {
  position: absolute;
  cursor: pointer;
  top: 0; left: 0; right: 0; bottom: 0;
  background-color: #ccc;
  transition: 0.4s;
  border-radius: 24px;
}

.slider:before {
  position: absolute;
  content: "";
  height: 18px;
  width: 18px;
  left: 3px;
  bottom: 3px;
  background-color: white;
  transition: 0.4s;
  border-radius: 50%;
}

input:checked + .slider {
  background-color: #2196F3;
}

input:checked + .slider:before {
  transform: translateX(26px);
}

/* Optional: Rundung */
.slider.round {
  border-radius: 24px;
}

.slider.round:before {
  border-radius: 50%;
}

.verteiler-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    background-color: #e6f2ff;
    border:2px Solid #000;
    border-radius:5px;
    padding: 4px;
}

.verteiler-table th,
.verteiler-table td {
    text-align: center;
    vertical-align: middle;
    padding: 6px;
    border: none;
}

.verteiler-table th:nth-child(1),
.verteiler-table td:nth-child(1) {
    text-align: right;
    background-color: #e6f2ff;
    width:80px;
}

.verteiler-table th:nth-child(2),
.verteiler-table td:nth-child(2) {
    text-align: left;
    background-color: #e6f2ff;
}

.hpinput-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    background-color: #66bb66;
    border:2px Solid #000;
    border-radius:6px;
    padding: 4px;
}

.hpinput-table th,
.hpinput-table td {
    text-align: center;
    vertical-align: middle;
    padding: 6px;
    border: none;
}

.hpinput-table th:nth-child(1),
.hpinput-table td:nth-child(1) {
    text-align: right;
    background-color: #d9f2d9;
    width:80px;
}

.hpinput-table th:nth-child(2),
.hpinput-table td:nth-child(2) {
    text-align: left;
    background-color: #d9f2d9;
}

.ok { 
     color: #155724; 
     background: #d4edda;
     padding:.6rem;
     border-radius:6px;
 }
 .err { 
     color: #721c24; 
     background: #f8d7da;
    padding:.6rem;
    border-radius:6px; 
}
 small.hint { 
    display:block; 
    margin-top:.5rem;
    color:#666; 
}

.lbl { 
    display:block; 
    margin-top:0.5rem;
    font-weight:600; 
}
    
.inp[type="password"] { 
    width:100%; 
    padding:.5rem; 
    margin-top:.25rem;
    box-sizing:border-box; 
}