﻿/*
 * Webseitenschutz - style.css (utf-8)
 * - https://werner-zenk.de
 */

@charset "UTF-8";

:root {
  --font-family: system-ui, -apple-system, "Segoe UI", "Roboto", "Ubuntu", "Cantarell", "Noto Sans", "Verdana", "Arial",
    sans-serif;
  --size-300: clamp(0.7rem, 0.66rem + 0.2vw, 0.8rem);
  --size-400: clamp(0.88rem, 0.83rem + 0.24vw, 1rem);
  --size-500: clamp(1.09rem, 1rem + 0.47vw, 1.33rem);
  --size-600: clamp(1.37rem, 1.21rem + 0.8vw, 1.78rem);
  --size-700: clamp(1.71rem, 1.45rem + 1.29vw, 2.37rem);
  --size-800: clamp(2.14rem, 1.74rem + 1.99vw, 3.16rem);
  --size-900: clamp(2.67rem, 2.07rem + 3vw, 4.21rem);
  --size-1000: clamp(3.34rem, 2.45rem + 4.43vw, 5.61rem);
  color-scheme: light dark;
}

/* * { border: 1px solid black; } */ 

html {
  box-sizing: border-box;
}
*, *::before, *::after {
  box-sizing: inherit; 
}

html {
  background-color: rgb(208, 208, 246);
  scroll-behavior: smooth;
  cursor: Default;
}

.raster {
	display:grid;
	grid-template-columns: repeat(auto-fit,minmax(120px, 1fr));
  
/*	grid-auto-rows fest: */
	grid-auto-rows: minmax(20px, auto);
	grid-auto-flow: dense;
	margin: 0em;
	align-content: space-around;
	align-items: flex-start;
	justify-content: space-around;
	justify-items: center;
	background-color: #e4ebf2;	
	margin-left: 0em;
	margin-right: 0em;
	padding: 1em;
	max-width: 95em;
	font-family:  "Helvetica Neue", Arial, sans-serif;
	color:black;
	
	border:#85B2E1;
}

.kind_m {
	grid-column: span 6;

  display: block;
	padding: 1em;
	text-decoration: underline;
	font-weight: bold;
	text-align: center;
	border: thin solid red;
	border-radius: 10px;
	box-shadow: 0 5px 10px white inset;

	background-color: #4169e1;
	transition: all .25s ease-in;
}

html {
  background-color: rgb(208, 208, 246);
  scroll-behavior: smooth;
  cursor: Default;
}

body {
  font-family: var(--font-family);
  font-size: 1.1rem;
  color: #000000;
  background-color: #ffffff;
  padding: 0.5rem;
  margin: 50px Auto 50px Auto;
  max-width: 45rem;
  scroll-behavior: smooth;
  box-shadow: 0px 0px 25px 0px #b5b5b5;
}

header {
  background-color: #ececec;
  text-align: Center;
  padding: 0.5rem;
  font-size: var(--size-700);
  user-select: None;
}

nav {
  background-color: #f5f5f5;
  text-align: Center;
  padding: 0.5rem;
  word-spacing: 8px;
}

main {
  background-color: #e4e055;
}

article {
  background-color:rgb(193, 212, 253);
}

a:link,
a:visited {
  color: white;
}

h1 {
  font-size: var(--size-700);
  font-weight: Normal;
  background-color: #ececec;
  padding: 0.2rem 0 0.2rem 0.5rem;
}

h2 {
  font-size: var(--size-400);
  font-weight: Normal;
  background-color: #ececec;
  padding: 0.2rem 0 0.2rem 0.5rem;
}

h3 {
  font-size: var(--size-300);
  font-weight: Normal;
  background-color: #ececec;
  padding: 0.2rem 0 0.2rem 0.5rem;
}
h4 {
  font-size: var(--size-600);
  font-weight: Normal;
  background-color: #ececec;
  padding: 0.2rem 0 0.2rem 0.5rem;
}

h5 {
  font-size: var(--size-500);
  font-weight: Normal;
  background-color: #ececec;
  padding: 0.2rem 0 0.2rem 0.5rem;
}

figure > img,
figure > a > img {
  display: Inline;
  max-width: 100%;
  height: Auto;
  object-fit: contain;
  box-shadow: 0px 0px 5px 2px #595959;
}

/* Formular */
form {
  background-color: #f5f5f5;
  padding: 0.5rem;
}

select {
  border-radius: 5px;
  font-family: var(--font-family);
  font-size: 1.1rem;
  padding: 4px 10px;
}

:focus-visible {
  outline: Solid 1px #4169e1;
}

input[type="text"],
input[type="password"],
input[type="number"],
input[type="email"],
input[type="button"],
input[type="tel"],
input[type="reset"],
input[type="submit"],
button[type="button"],
button[type="reset"],
button[type="submit"] {
  border: Solid 1px #9a9a9a;
  border-radius: 5px;
  font-family: var(--font-family);
  color: black;
  font-size: 1rem;
  padding: 5px 10px;
}

button[type="submit"],
button[type="reset"],
input[type="button"] {
	background: #37c275;
  color: #ffffff;
  transition: background-color .2s ease-in-out;
}

button:focus,
button:hover {
	box-shadow: 0 .3em 0.6em rgba(95, 204, 89, 0.8);
	background: #37c275;
  color: #ffffff;
  cursor: pointer;
}

button[type="submit"]:hover,
button[type="reset"]:hover,
input[type="button"]:hover {
	background: #37c275;
  cursor: pointer;
  font-size: 2rem;
}

button {
	background: blue;
  margin: 5px 10px 5px 10px;
  color: whitesmoke;
  font-size: 1rem;
}

/* unterschiedlich gestaltete buttons */
/* Stil für Button 1 */
.button1 {
  background-color: blue;
  color: white;
  padding: 10px 20px;
  border: 10px solid darkblue;
  border-radius: 10px;
  font-size: 32px;
}

/* Stil für Button 2 */
.button2 {
  background-color: green;
  color: white;
  padding: 8px 15px;
  border: 6px solid darkgreen;
  border-radius: 10px;
  font-size: 14px;
}

/* Stil für Button 3 */
.button3 {
  background-color: rgb(114, 113, 113);
  color: white;
  padding: 8px 15px;
  border: 6px solid rgb(187, 183, 183);
  border-radius: 10px;
  font-size: 8px;
}

a button {
  color: white; /* Schriftfarbe in den Buttons */
  background-color: #4CAF50; /* Hintergrundfarbe des Buttons */
  border: none;
  padding: 10px 20px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 16px;
  cursor: pointer;
  border-radius: 5px; /* Optional: Abgerundete Ecken */
}

a button:hover {
  background-color: #45a049; /* Hintergrundfarbe beim Hover */
}

a button:active {
  background-color: #3e8e41; /* Hintergrundfarbe beim Klicken */
}

/* unterschiedlich gestaltete buttons ENDE */


input[type="checkbox"],
input[type="radio"],
input[type="range"],
progress {
  accent-color: #4169e1;
}

input[type="checkbox"]:checked + label {
  color: #4169e1;
}

label {
  white-space: nowrap;
}

label:hover {
  color: #ffffff;

}

.ok {
  color: #ffffff;
  background-color: #0094d2;
  padding: 15px;
}

.ko {
  color: #ffffff;
  background-color: #ee0000;
  padding: 15px;
}

.info {
  font-size: 0.85rem;
  font-style: Oblique;
  background-color: #ffffee;
  padding: 5px;
}

.fett {
  font-size: 1.5rem;
}

.hellgruen {
  color: rgb(9, 122, 24);  
  }

.rot {
  color: rgb(193, 23, 23);  
  }
  
.gelb {
    color: rgb(204, 233, 13);  
    }
    
  .status {
  color: #ffffff;
  background-color: #2ab16d;
  padding: 15px;
}

.pflichtfeld {
  color: #ff0000;
}

.hilfetext {
  font-family: var(--font-family);
  font-size: 1.2rem;
  font-style: Oblique;
  color: #009726;
  font-style: italic;
}

.schrift2 {
  font-size: 3.2rem; 
}

.flex { 
  display: flex; 
  justify-content: center; 
  align-items: center;
  }
      
.mittig {
  text-align: center;
  }


footer {
  text-align: Center;
  background-color: #ececec;
  padding: 0.5rem;
  margin-top: 1rem;
  user-select: None;
}

.bild-groesse {
  width: 150px;
  height: auto;
}

.bild-groesse2 {
  width: auto;
  height: 10px;
}


/* Anpassung an Geräte */
@media screen and (max-width: 55rem) {
  body {
    max-width: 45rem;
    padding: 0.5rem;
  }
  section3 {
    min-height: 15rem;
  }
}

@media screen and (min-width: 65rem) {
  body {
    max-width: 55rem;
    padding: 1.5rem;
  }
}

@media screen and (min-width: 90rem) {
  body {
    max-width: 85rem;
    padding: 2.5rem;
  }
}

@media screen and (min-width: 120rem) {
  body {
    max-width: 110rem;
    padding: 3rem;
  }
}

@media (prefers-color-scheme: dark) {
  html {
    background-color: #232323;
  }

  body {
    color: #ffffff;
    background-color: #000000;
  }

  header {
    background-color: #686868;
  }

  nav {
    background-color: #9b9b9b;
  }

  form {
    background-color: #686868;
  }

  h1,
  h2 {
    background-color: #686868;
  }

  footer {
    background-color: #686868;
  }
}
