body {
    font-family: "Open Sans",Helvetica, Arial;
    margin: 0;
    padding: 0;
	font-size: 16px; /* Base font size */
    background-color: white;
    color: #333;
	overflow-x: hidden; /* Prevent horizontal scrolling */
}

h1 {
    font-family: "Open Sans",Raleway,Helvetica, Arial;
	font-size: 30px;
    margin: 5px;
    padding: 0px 0px 16px;
	text-align:center;

}

h1.full-width {
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  background-color: #215DA5;
  color: white;
  padding: 1rem;
  text-align: center;
  box-sizing: border-box;
  margin: 0;
  z-index: 1;
}

h2 {
    font-family: "Open Sans",Raleway,Helvetica, Arial;
	font-size: 27px;
    margin: 20px;
    padding: 0px 0px 16px;
	text-align:center;
}

h3 {
    font-family: "Open Sans",Raleway,Helvetica, Arial;
	font-size: 18px;
    margin: 0;
    padding: 0px 0px 16px;
	text-align:center;
}

header {
	display: flex;
	align-items: center;
	/* 
    justify-content: space-between; /* Add this line to push the menu icon to the right */
    /*
	text-align: center;
	background-color: #215DA5;
	*/	
	background-color: white;
    color: #fff;
	/*
	background-color: #B0CDD3;
    color: #333;
	*/
    padding: 1rem 0;
    
    font-size: 1.5rem; /* Larger font size for header */
    position: fixed; /* Fix the header at the top */
    top: 0; /* Set the header at the top of the page */
    width: 100%; /* Make sure the header takes full width */
    z-index: 1000; /* Ensure the header stays on top of other elements */
}

.header-content {
    display: flex;
    flex-direction: column; /* Stack children vertically */
    align-items: flex-start; /* Align children to the left */
    margin-left: 1rem; /* Add some left margin */
}
header img {
    margin-left: 1rem; /* Add some left margin */
    width: 14.0em; /* Make the image responsive */
    height: auto; /* Maintain aspect ratio */
}

header1 {
	display: flex;
	justify-content: space-between; /* Add this line to push the menu icon to the right */
	align-items: center;
    background-color: #333;
    color: #fff;
    padding: 1rem 0;
    text-align: center;
	font-size: 1.5rem; /* Larger font size for header */
}

header img {
	margin-right: 10px;
	padding: 1.0em;
	width: 4.0em; /* Make the image responsive */
	height: auto; /* Maintain aspect ratio */
}



header h1 {
    margin: 0;
    flex-grow: 1; /* Make h1 take up available space */
    text-align: left; /* Left align text within its space */
    font-size: 35px; /* Smaller size for mobile screens */
}

.root-path {
    font-size: 0.75rem; /* Smaller font size */
    color: #ccc; /* Lighter color for better contrast */
    text-align: left; /* Align text to the left */
    margin-top: -1.0rem; /* Space between h1 and rootpath */
    margin-left: 0; /* Ensure it aligns with the left edge of the header */
	font-style: italic; /* Make the text italic */
}



#infoBox {
    position: fixed; /* Keeps it in place while scrolling */
    top: 20px; /* Adjust the starting position */
    left: 50%; /* Center horizontally */
    transform: translateX(-50%); /* Proper centering */
    background-color: #215DA5; /* Blue background */
    color: white; /* White text */
    padding: 10px 50px; /* Add spacing */
    border-radius: 3px; /* Rounded corners */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); /* Nice shadow */
    z-index: 9999; /* Ensure it appears on top */
    opacity: 0; /* Start invisible */
    transition: opacity 0.5s ease, top 0.5s ease; /* Smooth fade and fly */
}



.menu-icon {
    display: inline-block;
	color: #215DA5 !important;
    cursor: pointer;
    z-index: 1000;
	
  position: fixed;
  top: calc(120px / 2 - 15px); /* Adjust based on actual header and icon height */
  right: 20px;
}

.menu-icon div {
    width: 35px;
    height: 5px;
    background-color: #215DA5; 
    margin: 6px 0;
    transition: 0.4s;
}

.menu {
    display: none;
    flex-direction: column;
    position: fixed;
    top: 60px; /* Adjust this value as needed */
    right: 20px;
    background-color: white;
    border: 1px solid #ccc;
    padding: 10px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    z-index: 999;
}

.menu a {
    padding: 10px 0;
    text-decoration: none;
    color: #333;
    transition: color 0.3s;
}

.menu a:hover {
    color: #215DA5;
}


.menu-separator {
    border: none;
    height: 1px;
    background-color: #ccc; /* or any color you prefer */
    margin: 8px 0; /* spacing above and below */
}


.change .bar1 {
    transform: rotate(-45deg) translate(-9px, 6px);
}

.change .bar2 {
    opacity: 0;
}

.change .bar3 {
    transform: rotate(45deg) translate(-8px, -8px);
}


nav ul {
    list-style: none;
    padding: 0;
}

nav ul li {
    display: inline;
    margin: 0 1rem;
}

nav ul li a {
    color: #fff;
    text-decoration: none;
}

main {
    margin-top: 10rem; /* Adjust this value to match the height of your header */
    padding-left: 12rem;
    padding-right: 12rem;
}

section {
    margin-bottom: 2rem;
}

footer {
    background-color: #215DA5;
    color: #fff;

	/*
	background-color: #B0CDD3;
    color: #333;
	*/
	
    text-align: center;
    padding: 10px;
    position: fixed;
    width: 100%;
    bottom: 0;
    font-size: 0.9rem;
	
	display: flex;
	justify-content: space-between;
	box-sizing: border-box; /* Ensures padding is included in the total width */	
	
}
.footer .center {
	text-align: center;
}
.footer .right {
	text-align: right;
	flex-shrink: 0; /* Ensures this div doesn't shrink */
            text-decoration: none;
            color: white;	
}

.white-link {
    color: white;
    text-decoration: none;	
  }
  
.footer a {
            text-decoration: none;
            color: white;
        }		
		

a.transparent-link {
            text-decoration: none; /* Remove underline */
            color: white;   /* Make text transparent */
        }

        a.transparent-link:hover {
            color: gray;          /* Change color on hover (optional) */
            cursor: pointer;      /* Show pointer cursor on hover */
        }
		
.element_link {
	color: red;     /* Text color */
	font-weight: bold; /* Bold text */
	text-decoration: underline; /* Underline text */
}

/* Modern button styles */

.styled-button {
    background-color: #4CAF50; /* Green background */
    border: none; /* Remove borders */
    color: white; /* White text */
    padding: 15px 32px; /* Some padding */
    text-align: center; /* Centered text */
    text-decoration: none; /* Remove underline */
    display: inline-block; /* Make the button inline-block */
    font-size: 14px; /* Increase font size */
    margin: 4px 2px; /* Some margin */
    cursor: pointer; /* Pointer/hand icon */
    border-radius: 2px; /* Rounded corners */
    transition-duration: 0.4s; /* 0.4 second transition effect to hover state */
	min-height: 100px;
	border: 0px solid black;
}
.styled-button:hover{
    background-color: white; /* White background on hover */
    color: black; /* Black text on hover */
    border: 2px solid #4CAF50; /* Green border on hover */
}

.styled-button.element_warning {
    background-color: yellow;
	color:black;
}
.styled-button.element_fault {
    background-color: red;
	color:black;
}

.styled-buttonB {
    background-color: #215DA5; /* Blue background */
    border: 2px solid #215DA5; /* Green border on hover */
    color: white; /* White text */
    padding: 10px 5px; /* Some padding */
    text-align: center; /* Centered text */
    text-decoration: none; /* Remove underline */
    display: inline-block; /* Make the button inline-block */
    font-size: 16px; /* Increase font size */
    margin: 2px 2px; /* Some margin */
    cursor: pointer; /* Pointer/hand icon */
    border-radius: 2px; /* Rounded corners */
    transition-duration: 0.4s; /* 0.4 second transition effect to hover state */
	max-width: 200px; /* Maximum width */	
}

.styled-buttonB:hover {
    background-color: white; /* White background on hover */
    color: black; /* Black text on hover */
    border: 2px solid #215DA5; /* Green border on hover */
}
.styled-buttonS {
    background-color: black; 
    border: none; /* Remove borders */
    color: white; /* White text */
    padding: 2px 2px; /* Some padding */
    text-align: center; /* Centered text */
    text-decoration: none; /* Remove underline */
    display: inline-block; /* Make the button inline-block */
    font-size: 14px; /* Increase font size */
    margin: 2px 2px; /* Some margin */
    cursor: pointer; /* Pointer/hand icon */
    border-radius: 2px; /* Rounded corners */
    transition-duration: 0.4s; /* 0.4 second transition effect to hover state */
	width: 100px;
}
.styled-buttonS:hover{
    background-color: black; /* White background on hover */
    color: black; /* Black text on hover */
    border: 0px solid #4CAF50; /* Green border on hover */
    color: white; /* White text */
}

        
/* Modern button styles */
button, .buttonM, .buttonM1 {
    /*background-color: #007BFF;*/
    /*color: #fff;*/
    border: 1px lightgrey solid;
    padding: 0.55rem 1.5rem;
    font-size: 1rem;
    border-radius: 2px;
    cursor: pointer;
    transition: background-color 0.3s ease;
    width: 100%;
	pointer-events: auto; /* Ensure pointer events are enabled */
}

.buttonM {
    background-color: #0056b3;
}
.buttonM1, .buttonMS {
	width: fit-content;
	min-width : 10em;
}


button:hover, .buttonM, .buttonM1:hover {
    background-color: #0056b3;
}

button:active, .buttonM, .buttonM1:active {
    background-color: #004085;
}

button:disabled, .buttonM, .buttonM1:disabled {
    background-color: #cccccc;
    cursor: not-allowed;
}

.rounded {
	width : 400px;
	border-radius: 0px; /* You can adjust the value to make the edges more or less rounded */
}


.gallery img {
            width: 500px;  /* Adjust width */
            height: auto;  /* Maintain aspect ratio */
}			

.container {
	display: flex;
	gap: 1rem;
}
.columnH {
	flex: 1;
	background-color: #f4f4f4;
	padding: 1rem;
	border: 0px solid #ccc;
	justify-content: center;	
    align-items: center;
	text-align: center; /* Center text horizontally */
}
.column {
	flex: 1;
	background-color: #f4f4f4;
	padding: 1rem;
	font-size: 1.2rem;
	font-weight: bold;
	border: 0px solid #ccc;
	justify-content: center;	
    align-items: center;
    word-wrap: break-word; /* Ensure long words break to the next line */
    word-break: break-word; /* Ensure long words break to the next line */
	text-align: center; /* Center text horizontally */
}
.small-font {
    font-size: 1rem; /* Smaller font size for the second column */
    font-weight: normal;
}
		

.blinking-background {
    background-color: red;
	color: white;
	font-weight:bold;
	padding: 1rem;
    animation: blink-animation 3s steps(5, start) infinite;
}

.columnPic {
    display: inline-block;
    vertical-align: top;
    width: 50%; /* Adjust as needed */
    margin: 00px;
}

.rounded-image {
    width: 100%;
    /*max-width: 200px; /* Ensure the image doesn't get too large */
    max-height: 200px; /* Ensure the image doesn't get too large */
    height: auto; /* Maintain aspect ratio */
    border-radius: 2px; /* Make it round */
    object-fit: cover; /* Ensure the image covers the entire area */
}


@keyframes blink-animation {
    50% {
        opacity: 0;
    }
}



.containerL {
    display: flex;
    flex-wrap: wrap; /* Allow columns to wrap */
    justify-content: space-between; /* Distribute space evenly between columns */
    align-items: flex-start;
    gap: 20px; /* Adjust space between columns as needed */
}

.columnL {
    flex: 1 1 calc(33.33% - 20px); /* Adjust for the gap between columns */
    min-width: 200px; /* Adjust minimum width as needed */
}

.columnL ul li {
    margin-bottom: 10px; /* Adjust the value as needed */
}



h2 {
	text-align: center;
}



.group {
    background-color: #fff;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	border-left: none;
	border-right: none;
	
    border-radius: 2px;
    padding: 20px;
	
    margin-bottom: 20px;
    box-shadow: 0 0px 0px rgba(0, 0, 0, 0.1);
	width: 100%; /* Make the group element span the full width */
	max-width: 100%; /* Prevent overflow */
    box-sizing: border-box; /* Include padding and border in the element's total width */ 
	overflow: auto; /* Scrollbars appear only when needed */
	border-top: 0px solid transparent; 
}

.group_main {
    background-color: #fff;
    border: 0px solid #ddd;
    border-radius: 2px;
    padding: 20px;
	
    margin-bottom: 20px;
    box-shadow: 0 0px 0px rgba(0, 0, 0, 0.1);
	width: 100%; /* Make the group element span the full width */
	max-width: 100%; /* Prevent overflow */
    box-sizing: border-box; /* Include padding and border in the element's total width */ 
	overflow: auto; /* Scrollbars appear only when needed */
	border-top: 0px solid transparent; 
}

.group h2 {
    margin-top: 0;
    font-size: 24px;
    color: #333;
	margin : 10px;
}

.float-left {
    float: left;
    margin-right: 10px;
}


.fixed-width-label {
            display: inline-block; /* Ensures the label respects the width */
            width: 100px; /* Set the fixed width */
			font-size: 0.8em;
            font-weight: normal; /* Optional: make the text bold */
            text-align: left; /* Optional: align text to the right */
            margin-right: 10px; /* Optional: add some space after the label */
            border: 0px solid #4CAF50; /* Add a border around the label */
            border-radius: 2px; /* Optional: rounded corners */
            padding: 2px; /* Optional: add some padding inside the label */
}           

.fixed-width-label {
            display: inline-block; /* Ensures the label respects the width */
            width: 100%; /* Set the fixed width */
			font-size: 0.8em;
            font-weight: normal; /* Optional: make the text bold */
            text-align: center; /* Optional: align text to the right */
            margin-right: 10px; /* Optional: add some space after the label */
            border: 0px solid #4CAF50; /* Add a border around the label */
            border-radius: 2px; /* Optional: rounded corners */
            padding: 2px; /* Optional: add some padding inside the label */
}           
       
       
       table {
            width: 100%;
            border-collapse: collapse;
            margin-bottom: 20px;
            background-color: #fff;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
        }
        th, td {
            padding: 8px;
            border: 1px solid #ddd;
            text-align: left;
        }
        th {
            background-color: #215DA5;
            color: white;
        }
        tr:nth-child(even) {
            background-color: #f2f2f2;
        }
		tr:hover {
		    background-color: #ddd;
		}        
        
        .carousel {
            position: relative;
            width: 80%;
            max-width: 800px;
            margin: auto;
            overflow: hidden;
        }
        .carousel img {
            width: 100%;
            border-radius: 15px;
            cursor: pointer;
            flex: 0 0 100%; /* Ensures each image takes up 100% of the container */
        }
        .carousel-images {
        	display: -moz-box; /* Fallback for older Firefox versions */
            display: flex;
            transition: -moz-transform 0.5s ease-in-out;
            transition: transform 0.5s ease-in-out;
            will-change: transform; /* Optimierung f?r bessere Performance */
        }



.carousel1_old {
            position: relative;
            width: 80%;
            max-width: 800px;
            margin: auto;
            overflow: hidden;
}
.carousel1 {
  width: 800px;
  height: 600px;
  overflow: hidden;
  position: relative;
  margin: auto;
}

.carousel1-inner {
  display: flex;
  width: 400%;
  animation: slide 12s infinite;
}

.carousel1-item {
  width: 25%;
  transition: transform 0.5s ease;
}

.carousel1-item img {
  width: 100%;
  height: 600px;
  display: block;
  object-fit: cover; /* This will stretch the image to cover the entire area */
  border-radius: 20px;
}

@keyframes slide {
  0% { transform: translateX(0); }
  25% { transform: translateX(-25%); }
  50% { transform: translateX(-50%); }
  75% { transform: translateX(-75%); }
  100% { transform: translateX(-100%); }
  100% { transform: translateX(0); } /* Reset to the first image */
}


div.record {
    width: 100%;
    border: 1px solid #ddd;
    margin-bottom: 20px;
    background-color: #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    padding: 12px;
    cursor: pointer;
}

div.record:hover {
    background-color: #ddd;
}

div.record p {
    margin: 0;
    padding: 4px 0;
}

div.record p strong {
    color: #4CAF50;
}


        .group1 {
            background: #fff;
            padding: 20px;
            border-radius: 3px;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
            width: 100%;
            max-width: 400px;
            text-align: center;
        }
        .group1 h2 {
            margin-bottom: 20px;
            color: #333;
        }
        .group1 input[type="text"],
        .group1 input[type="password"] {
            width: 100%;
            padding: 10px;
            margin: 8px 0;
            box-sizing: border-box;
            border: 1px solid #ccc;
            border-radius: 2px;
        }
        .group1 input[type="submit"] {
            width: 100%;
            background-color: #4CAF50;
            color: white;
            padding: 10px;
            border: none;
            border-radius: 2px;
            cursor: pointer;
        }
        .group1 input[type="submit"]:hover {
            background-color: #45a049;
        }
        .error {
            color: red;
            margin: 10px 0;
        }
		
        #loginForm {
            display: none; /* Initially hide the form */
            align-items: center;
        }		
        #loginForm input, #loginForm button {
            display: inline-block;
            vertical-align: middle;
			font-size: 1.2em; /* 50% larger than the base font size */
        }

.summary-board {
    display: flex;
	justify-content: center; /* Center items horizontally */
    align-items: center; /* Center items vertically */
	flex-wrap: wrap; /* Allow items to wrap to the next line */
    gap: 5px;
}

.summary-item {
    background-color: #fff;
    padding: 15px;
    border-radius: 3px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    width: 200px;
    min-height:50px;
    text-align: center;
	position: relative; /* Ensure positioning context */
	font-size: 0.9em; /* 0% larger than the base font size */
	border: 0px solid black;;
}

.summary-item h2 {
    margin-top: 0;
	font-size: 1.3em; /* 0% larger than the base font size */
	min-height: 50px;
}

.summary-item.kunde {
    background-color: #ADD8E6 ; /* Light blue */
}

.summary-item.plant {
    background-color: #ccffcc; /* Light green */
}

.summary-item.object {
    background-color: #ccccff; /* Light blue */
}

.summary-item.element {
    background-color: #ccccff; /* Light blue */
}

.summary-item.element_ok {
    background-color: #ccffcc; /* Light blue */
}
.summary-item.element_warning {
    background-color: #FFFFE0; /* Light yellow */
}
.summary-item.element_warning_2 {
    background-color: #FFFFE0; /* Light yellow */
	max-height : 5px;
}
.summary-item.element_fault {
    background-color: #ffcccc; /* Light red */
}


.element_fault {
    background-color: #ffcccc; /* Light red */
}

.attention-icon {
    position: absolute;
    top: 30px;
    right: 10px;
    width: 20px; /* Adjust the size as needed */
    height: auto; /* Maintain aspect ratio */
    margin-left: 10px;
}
.mobile-icon {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 20px; /* Adjust the size as needed */
    height: auto; /* Maintain aspect ratio */
    margin-left: 10px;
}

.flex-container {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.left-align {
    text-align: left;
}

.right-align {
    text-align: right;
}
.right-align.element_ok {
    color: green;
}
.right-align.element_warning {
    color: yellow;
}
.right-align.element_fault {
    color: red; 
}


.hidden {
    display: none;
}


        .add-button {
            background-color: #4CAF50; /* Green */
            border: none;
            color: white;
            padding: 10px 20px;
            text-align: center;
            text-decoration: none;
            display: inline-block;
            font-size: 16px;
            margin: 4px 2px;
            cursor: pointer;
            border-radius: 2px;
        }
        .add-icon {
            vertical-align: middle;
            margin-right: 3px;
        }
		
		
#uploadForm {
    max-width: 100%;
}		

#uploadForm input[type="text"],
#uploadForm input[type="file"],
#uploadForm button {
    height: 40px;
    font-size: 18px;
}

#uploadForm button {
    height: 50px;
    font-size: 20px;
}


.form-row {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

/*
.containerL {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	border:0px solid black;
}

.columnL {
	flex: 1;
	min-width: 45%;
	margin: 1px;
	border:0px solid red;
}
*/		

.form-row1 {
    display: flex;
    flex-wrap: wrap; /* Allow wrapping for small screens */
    align-items: center;
    margin-bottom: 10px;
}

.containerL1 {
    display: flex;
    flex-wrap: wrap; /* Allow wrapping of the columns */
    justify-content: space-between;
    max-width: 100%; /* Ensure the container doesn't exceed 100% of the width */
    margin: 0 auto; /* Center the container horizontally */
    border: 0px solid black;
}

.columnL1 {
    flex: 0 0 calc(50% - 5px); /* Calculate width as 50% minus margin */
    min-width: 45%; /* Minimum width of 45% to ensure it doesn't shrink below this */
    margin: 5px; /* Space between columns */
    border: 0px solid red;
}

.columnL1 input[type="text"], .columnL1 select, .columnL1 input[type="password"] {
    width: 100%;
    min-width: 400px; /* Minimum width for input fields inside columnL1 */
    max-width: 500px; /* Maximum width for input fields inside columnL1 */
    box-sizing: border-box; /* Include padding and border in the element's total width and height */
    padding: 10px; /* Add some padding for better spacing */
    border: none; /* Remove the hard border */
    border-radius: 5px; /* Add rounded corners */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Add a light shadow */
    background-color: #f9f9f9; /* Light background color */
	font-size: 18px;
	font-weight: bold;
    transition: box-shadow 0.3s ease; /* Smooth transition for box-shadow */
}

.columnL1 input[type="text"]:focus , .columnL1 select:focus, input[type="password"]:focus {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2); /* Slightly stronger shadow when focused */
    outline: none; /* Remove the default focus outline */
}


.button-container { 
	display: flex; 
	justify-content: center; /* Center the buttons horizontally */ 
	align-items: center; 
	flex-wrap: wrap; /* Allow wrapping of the buttons if needed */ 
	margin-top: 20px; /* Add some margin to the top for spacing */ 
}

.button-container .btn { 
	width: 100px; /* Set the width of the button */ 
	height: 30px; /* Set the height of the button */ 
	margin: 10px; /* Add some margin for spacing */ 
	display: inline-flex; /* Use inline-flex to align items inside the button */ 
	align-items: center; /* Center items vertically */ 
	justify-content: center; /* Center items horizontally */
}

#responseMessage {
	margin-top: 20px;
	padding: 10px;
	border: 1px solid #ccc;
	border-radius: 5px;
	background-color: #f9f9f9;
	display: none; /* Hide by default, will be shown when message is received */
}
		





#ServiceTitel {
	width : 95%;
    flex: 1;
    height: 60px;
    font-size: 18px;
    padding: 9px;
	margin : 0px;
}
#ServiceType {
	width : 100%;
    flex: 1;
    height: 60px;
    font-size: 18px;
    padding: 0px;
	margin : 0px;
}
#ReportTitel {
    flex: 1;
    height: 40px;
    font-size: 18px;
    padding: 10px;
}

#LaufzeitStunden {
	width : 95%;
    flex: 1;
    height: 40px;
    font-size: 18px;
    padding: 9px;
	margin : 0px;
}
#LaufzeitType {
	width : 100%;
    flex: 1;
    height: 60px;
    font-size: 18px;
    padding: 0px;
	margin : 0px;
}



.file-upload {
    flex: 1;
    position: relative;
}

.custom-file-upload {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px; /* Make the file input button height 66px */
    font-size: 18px;
    padding: 10px 20px;
	background-color: #808080; /* Gray color */
    color: white;
    text-align: center;
    border-radius: 2px;
    cursor: pointer;
	white-space: nowrap; /* Prevent text from wrapping */
}

.custom-file-upload input[type="file"] {
    display: none;
}

.add-button {
    width: 100%;
    height: 66px; /* Match the height of the file input button */
    font-size: 20px;
}

/* Contact Form Styles */
.contact-form {
    background: #fff;
    padding: 20px;
    border-radius: 5px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    width: 350px;
    text-align: left;
    margin: 0 auto;
}

.contact-form h2 {
    margin-top: 0;
    color: #333;
    text-align: center;
}

.contact-form label {
    margin: 10px 0 5px;
    display: block;
    color: #333;
}

.contact-form input,
.contact-form textarea {
    width: 100%;
    padding: 10px;
    margin-bottom: 10px;
    border: 1px solid #ccc;
    border-radius: 2px;
    color: #333;
}

.contact-form button {
    width: 100%;
    padding: 10px;
    background: grey;
    border: none;
    border-radius: 2px;
    color: #fff;
    font-size: 16px;
    cursor: pointer;
}

.contact-form button:hover {
    background: #4cae4c;
}

#form-messages {
    margin-top: 10px;
    color: #333;
    text-align: center;
}

.banner {
    position: relative;
	justify-content: center; /* Center horizontally */ 
	align-items: center; /* Center vertically */
    width: 100%;
    height: 70vh; /* Adjust as needed */
	z-index: 0; /* Ensure it stays below the header */	
}

.banner-image {
    position: absolute;
    width: 100%;
    height: 100%;
	object-fit: cover; /* Maintain aspect ratio and cover the container */
    opacity: 0;
    transition: opacity 2s ease-in-out;
}

.relative-parent { 
	position: relative; /* Ensure positioning context for absolute children */ 
}


.edit-button {
    display: inline-flex;
    align-items: center;
	justify-content: center; /* Centers the icon within the button */	
    padding: 10px 15px;
    font-size: 16px;
    color: #fff;
    background-color: lightgrey;
    border: 0px black solid;
    border-radius: 2px;
    cursor: pointer;
    transition: background-color 0.3s;
	width : 15px;
	height : 15px;
	position : absolute;
	bottom : 10px;
	right : 15px;
	
}
.info-button {
    display: inline-flex;
    align-items: center;
	justify-content: center; /* Centers the icon within the button */	
    padding: 10px 15px;
    font-size: 16px;
    color: #fff;
    background-color: lightgrey;
    border: 0px black solid;
    border-radius: 2px;
    cursor: pointer;
    transition: background-color 0.3s;
	width : 15px;
	height : 15px;
	position : absolute;
	bottom : 35px;
	right : 15px;
	
}

.edit-button i {
    margin-right: 5px;
}

.edit-button:hover {
    background-color: #0056b3;
}


.cookie-consent-banner {
	display: none;
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	background-color: #333;
	color: #fff;
	padding: 15px;
	text-align: center;
	z-index: 1000;
}
.cookie-consent-banner button {
	margin-left: 10px;
	padding: 10px 20px;
	background-color: #4CAF50;
	color: white;
	border: none;
	cursor: pointer;
}
/* Overlay Form Styles */
.overlay-form {
	display: none;
	position: fixed;
	bottom: 0;
	left: 0;
	width: 60%;
	background-color: rgba(0, 0, 0, 0.8);
	color: #fff;
	padding: 20px;
	text-align: center;
	z-index: 1000;
}

/* Overlay Form Button Styles */
.overlay-form button {
	margin: 5px;
	padding: 10px;
	max-width : 60%;
	background-color: #4CAF50;
	color: white;
	border: none;
	cursor: pointer;
}
		
		
.image-container {
    position: relative;
    display: inline-block;
}

.rotatable-image {
    transition: transform 0.3s ease;
}

.rotate-button {
    position: absolute;
	width : 50px;
    bottom: 10px;
    left: 10px;
    padding: 6px 10px;
    background-color: rgba(0, 0, 0, 0.5);
    color: white;
    border: 2px solid;
    border-radius: 5px;
    cursor: pointer;
}


@media (max-width: 768px) {
	.containerL {
		flex-direction: column; /* Stack columns vertically */
		align-items: center; /* Center columns */
	}
	.columnL {
		width: 100%; /* Make columns full width on smaller screens */
		margin-bottom: 20px; /* Add space between stacked columns */
	}

	button, .buttonM, .buttonM1 {
		border: none;
	}
	main {
		padding-left: 1rem;
		padding-right: 1rem;
	}	

	th, td {
		font-size: 12px; /* Font size for mobile */
	}
	header img {
		margin-right: 2px;
		padding: 0.5em;
		width: 3.0em; /* Make the image responsive */
		height: auto; /* Maintain aspect ratio */
	}
	
	.rounded {
		width : 300px;
		border-radius: 0px; /* You can adjust the value to make the edges more or less rounded */
	}
	
	.menu-icon {
		display: inline-block;
		color: #215DA5 !important;
		cursor: pointer;
		z-index: 1000;
		
	  position: fixed;
	  top: calc(100px / 2 - 15px); /* Adjust based on actual header and icon height */
	  right: 20px;
	}

	.menu-icon div {
		width: 35px;
		height: 5px;
		background-color: #215DA5; 
		margin: 6px 0;
		transition: 0.4s;
	}
		
}

@media only screen and (max-width: 768px) {
    header h1 {
        font-size: 24px; /* Smaller size for mobile screens */
    }
}

@media only screen and (max-width: 480px) {
    header h1 {
        font-size: 20px; /* Even smaller size for very small screens */
    }
}

@media (max-width: 600px) {
    .group {
        padding: 10px; /* Adjust padding for smaller screens */
		width : 90%;
		max-width : none;
	}

}

@media (max-width: 600px) {
    .columnL1 {
        flex: 0 0 100%; /* On small screens, columns take 100% width */
        min-width: 100%;
    }
	
}


.loginX-modal {
    display: none; /* Initially hidden */
    justify-content: center;
    align-items: start;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1000;
}

.loginX-modal-content {
    background-color: #fff;
    padding: 20px;
    border-radius: 2px;
    width: 300px;
    margin-top: 50px;
}

.loginX-header h2 {
    margin: 0;
    padding-bottom: 20px;
    text-align: center;
}

.loginX-body label {
    display: block;
    margin-bottom: 5px;
}

.loginX-body input[type="password"], .loginX-body input[type="text"] {
    width: 100% !important;
    padding: 8px !important;
    margin-bottom: 15px !important;
    border: 1px solid #ccc !important;
    border-radius: 2px !important;
    box-sizing: border-box !important;
}

.loginX-footer button {
    width: 100%;
    padding: 10px;
    background-color: lightgrey;
    color: #fff;
    border: none;
    border-radius: 2px;
    cursor: pointer;
	transition: background-color 0.3s;
}

.loginX-footer button:hover {
{ 	background-color: #ffffff; /* White background on hover */ 
	color: #000; /* Change text color to black on hover for better contrast */
}

.footer_buttons {
    padding: 10px 20px !important;
    background-color: lightgrey !important; /* Light grey background */
    border: 1px solid black !important;
    border-radius: 2px !important;
}

.footer_buttons .btn1 {
    padding: 10px 20px;
    font-size: 16px;
    color: #fff;
    background-color: lightgrey; /* Light grey background */
    border: 1px solid black;
    border-radius: 2px;
    cursor: pointer;
    transition: background-color 0.3s;
}

.footer_buttons .btn1:hover {
    background-color: #ffffff; /* White background on hover */
    color: #000; /* Change text color to black on hover for better contrast */
}

.footer .footer_buttons input[type="button"] {
    padding: 10px;
    background-color: lightgrey;
    color: #fff;
    border: none;
    border-radius: 2px;
    cursor: pointer;
    transition: background-color 0.3s;
	padding : 30px;
}

.footer .footer_buttons input[type="button"]:hover {
    background-color: #ffffff; /* White background on hover */
    color: #000; /* Change text color to black on hover for better contrast */
}



/* Additional specificity if needed */ 
#logoutForm button.logout-button { 
	background-color: lightgrey; 
	color: #fff; 
} 

#logoutForm button.logout-button:hover { 
	background-color: #ffffff; 
	color: #000; 
}




