/* Custom Stylesheet */
/**
 * Use this file to override Materialize files so you can update
 * the core Materialize files in the future
 *
 * Made By MaterializeCSS.com
 */

body {
   display: flex;
    flex-direction: row; /* Hauptachsen-Richtung: horizontal */
    height: 100vh; /* Volle Bildschirmhöhe */
    margin: 0;
}

.centered-container {
    display: flex;
    justify-content: center; /* Horizontal zentrieren */
    align-items: center; /* Vertikal zentrieren */
    height: 100vh; /* Volle Bildschirmhöhe */
    width: 100%; /* Volle Breite */
}
.content-container {
    display: flex;
    flex-direction: column;
    flex-grow: 1; /* Lässt den Bereich neben der Sidebar wachsen */
}

.number {
	text-align:right;
}

.icon-block {
  padding: 0 15px;
}
.icon-block .material-icons {
	font-size: inherit;
}

.custom-toast {
    background-color: #DDDDDD !important; /* Gelbe Hintergrundfarbe */
    color:black;
    font-size: 12pt !important; /* Schriftgröße auf 20pt */
    text-align: center !important; /* Text zentrieren */
    width: auto !important; /* Automatische Breite */
    min-width: 300px !important; /* Mindestbreite setzen */
    max-width: 80% !important; /* Maximale Breite für kleine Bildschirme */
    left: -100% !important; /* Startpunkt in der Mitte */
    transform: translateX(-50%) !important; /* Exakte Zentrierung */
    top: 200px !important; /* 100px Abstand von oben */ 
 }
/* LOGN */

.login-container {
    width: 100%;
    max-width: 500px; /* Maximal 500px breit */
    margin: 10px;
    padding: 20px;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2);
    border-radius: 10px;
    background: #fff;
}

.login-text {
		margin-top: 20px;
		margin-bottom: 20px;
}


/* HEADBAR */
.headbar {
    width: 1000px;
    height: 115px;
    background: #f4f4f4;
    padding: 20px;
}

.banner {
   display: flex;
    flex-direction: column;
    align-items: flex-end;
    text-align: right;
    width: 100%;
}

.header {
   font-size:12px;
}

.headlogo {
    max-height: 50px;
    margin-right: 10px;
}


/* SIDEBAR */
.sidebar {
    width: 250px;
    height: 100%;
    background: #f4f4f4;
    padding: 20px;
    flex-shrink: 0; /* Verhindert Größenanpassung */
}
.sidebar a {
    display: flex;
    align-items: center; /* Zentriert Icon und Text vertikal */
    text-decoration: none;
    color: #333;
    padding: 10px;
    width: 100%;
    font-size: 16px;
}

.sidebar a i {
    margin-right: 10px; /* Abstand zwischen Icon und Text */
    font-size: 24px; /* Icon-Größe */
}

.sidebar .divider {
    width: 80%;
    height: 1px;
    background-color: #ccc;
    margin: 15px 0;
}
.sidebar a:hover {
    background: #ddd;
}
.sidebar_img {
	width:250px;
	height:115px;
	margin: -20px;
	margin-bottom:10px;
}

.sidebar_text {
    margin-left: 10px; /* Abstand zwischen Icon und Text */
}

.menu-toggle {
    display:none;
}


/* MAIN */

.small {
	font-size:0.8em;
}
.black {
	color:black;
}
.main-content {
    position: relative;
    width: 960px;
    height:100vh;
   flex-grow: 1;
   overflow: auto;
 }

.main-container {
    margin-top: 10px;
    margin-left: 20px;
  }

table {
    width: 100%;

}

td {
	padding:5px 5px;
}
.controls-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}
.controls-container input {
    width: 200px;
}


/* Responsive Menü für Mobile Ansicht */
@media screen and (max-width: 768px) {
    .sidebar {
        width: 200px;
        transform: translateX(-100%); /* Sidebar ausblenden */
        position: fixed;
        z-index: 1000;
        box-shadow: 2px 0 5px rgba(0,0,0,0.1);
    }

		.sidebar_img {
			width:200px;
			height:115px;
			margin: -20px;
			margin-bottom:10px;
		}

    .sidebar.show {
        transform: translateX(0); /* Sidebar sichtbar machen */
    }

    /* Button zum Öffnen/Schließen */
    .menu-toggle {
    		display: block;
        position: fixed;
        top: 20px;
        left: 20px;
        background: #26a69a;
        color: white;
        padding: 10px;
        border-radius: 50%;
        cursor: pointer;
        z-index: 1100;
    }

		.main-content {
		    width: 100%;
		    margintop: 100px;
		    left: 0px;
		    margin: 20px;
		}

		/* HEADBAR */
		.headbar {
		    width: 100%;
		    height: 100px;
		    background: #f4f4f4;
		    padding: 20px;
		    top: 0px;
		    left: 0px;
		}

}


/* Responsive Menü für Mobile Ansicht */
@media screen and (max-width: 430px) {
	html {
		font-size:8pt;
	}

	.main-container {
		margin-left: 5px;
	}
	.btn {
		font-size:8pt;
		height:20px;
		line-height:20px;
	}

}
