:root {
	--g: #28a745;
	--y: #ffc107;
	--r: #dc3545;
	--b: #00aeff;
	--gr: #d1d3d8;
	--v: #9b59b6;
}

/* Grundlegende Stile */
body {
	font-family: 'Arial', sans-serif;
	margin: 0;
	padding: 0;
	background-color: #2f3136;
	color: #d1d3d8;
	transition: background-color 0.3s ease;
	curser: default;
}

p {
	curser: default;
}

body.light-mode {
	background-color: #f4f6f9;
	color: #2f3136;
}

.g {
	color: var(--g);
}

.y {
	color: var(--y);
}

.r {
	color: var(--r);
}

.o {
	color: orange;
}

.bl {
	color: #00aeff;
}

.b {
	font-weight: bold;
}

.tac {
	text-align: center;
}

/*
b {
	color: #d1d3d8;
}
*/

p, h1, h2, h3, h4, h5, h6 {
	padding: 0px;
	margin: 0px;
}

a {
	color: var(--b);
	text-decoration: none;
}

a:hover {
	color: var(--b);
	text-decoration: underline;
}

a:active {
	color: var(--gr);
	text-decoration: none;
}

button,
input[type="button"],
input[type="submit"],
input[type="reset"] {
  all: default;             /* alles zurücksetzen */
}


/*
.res button {
	color: var(--b);
	text-decoration: none;
	background: transparent;
	padding: 0px;
	margin: 0px;
	border: 0px solid transparent;
	font-size: 16px;
}

.res button:hover {
	color: var(--b);
	text-decoration: underline;
}

.res button:active {
	color: var(--gr);
	text-decoration: none;
}

.res {
	color: var(--r);
	text-decoration: none;
	background: transparent;
	padding: 0px;
	margin: 0px;
	border: 0px solid transparent;
	font-size: 16px;
}

.res:hover {
	color: var(--r);
	text-decoration: underline;
}

.res:active {
	color: var(--gr);
	text-decoration: none;
}
*/

/* */

.lo {
	color: red;
	text-decoration: none;
}

.lo:hover {
	color: red;
	text-decoration: underline;
}

.lo:active {
	color: black;
	text-decoration: none;
}

/* Sidebar-Stile */
#sidebar {
	background-color: #292b2f;
	width: 250px;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	padding-top: 20px;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	transition: width 0.3s ease;
	z-index: 100;
}

#sidebar.collapsed {
	width: 0;
	visibility: hidden;
}

#sidebar #logo-container {
	text-align: center;
	margin-bottom: 20px;
}

#sidebar #logo-container img {
	width: 100%;
	max-width: 250px;
	height: auto;
}

#sidebar ul {
	list-style: none;
	padding: 0;
}

#sidebar ul li {
	padding: 15px 25px;
	margin-bottom: 10px;
	text-align: left;
}

#sidebar ul li a {
	text-decoration: none;
	color: #b9bbbe;
	font-size: 1.1rem;
}

#sidebar ul li a:hover {
	color: #fff;
	text-decoration: none;
}

#sidebar ul li a:active {
	text-decoration: underline;
	color: #fff;
	font-size: 1.1rem;
}

/**/

#sidebar ul li .lo {
	text-decoration: none;
	color: red;
	font-size: 1.1rem;
}

#sidebar ul li .lo:hover {
	color: red;
	text-decoration: underline;
}

#sidebar ul li .lo:active {
	text-decoration: none;
	color: black;
	font-size: 1.1rem;
}

/*
#sidebar ul li:nth-child(6) a,
#sidebar ul li:nth-child(7) a,
#sidebar ul li:nth-child(8) a {
	color: #19A9FF;
}

#sidebar ul li:nth-child(6) a:hover,
#sidebar ul li:nth-child(7) a:hover,
#sidebar ul li:nth-child(8) a:hover {
	color: #4fc7ff;
}
*/

/* Sidebar Submenu */
#sidebar ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

#sidebar ul li {
    position: relative;
    margin: 0;
}

#sidebar ul li a, #sidebar ul li label {
    display: block;
    padding: 8px 12px;
	font-size: 1.1rem;
}

#sidebar ul li.submenu input {
    display: none;
}

#sidebar ul li.submenu .dropdown {
    display: none;
    list-style: none;
    padding-left: 15px;
}

#sidebar ul li.submenu input:checked + label + .dropdown {
    display: block;
}

/* Optional: kleine Pfeilrotation */
#sidebar ul li.submenu label::after {
    content: "▼";
    float: right;
    transition: transform 0.3s;
}

#sidebar ul li.submenu input:checked + label::after {
    transform: rotate(-180deg);
}

/* Inhalt-Stile */
#content {
	margin-left: 250px;
	padding: 20px;
	transition: margin-left 0.3s ease;
}

#content header {
	margin-bottom: 20px;
}

#content h1 {
	font-size: 2rem;
	color: #fff;
}

#content h4 {
	font-size: 2rem;
	/* color: #ff4d4d; */
	color: var(--b);
}

#content > .announcement-box,
#content > .news-item,
#content > .team-member {
	background-color: #40444b;
	padding: 20px;
	border-radius: 5px;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
	margin-bottom: 30px;
}

.news-item-info li {
	padding-left: 20px;
}

/* Filter und Buttons nebeneinander im Shop */
#filters {
	display: flex;
	justify-content: flex-start;
	gap: 15px; /* Abstand zwischen den Buttons */
	margin-bottom: 20px;
}

.filter-btn {
	background-color: #40444b;
	color: #fff;
	border: none;
	padding: 10px 20px;
	cursor: pointer;
	border-radius: 5px;
	font-size: 1.1rem;
	transition: background-color 0.3s;
}

.filter-btn:hover {
	background-color: #303335;
}

/* Fahrzeug-Items im Shop */
#shop-container {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 20px;
}

.shop-item {
	background-color: #40444b;
	border-radius: 8px;
	padding: 20px;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

/* 1:1 Verhältnis für Produktbilder */
.shop-item-img {
	position: relative;
	width: 100%;
	padding-top: 100%;  /* Dies sorgt für das 1:1-Verhältnis */
	overflow: hidden;
	border-radius: 8px;
}

.shop-item-imgg {
	position: relative;
	width: 100%;		/* Regelt die Breite */
	height: auto;	   /* Höhe wird automatisch angepasst */
	max-width: 100%;	/* Maximale Breite des Bildes */
	overflow: hidden;
	border-radius: 8px;
}

.shop-item-imgg img {
	width: 100%;		/* Bild passt sich der Breite an */
	height: auto;	   /* Höhe bleibt proportional */
	display: block;	 /* Verhindert zusätzliche Lücken unter dem Bild */
}

.shop-item-img img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 8px;
}

.shop-item-info h3 {
	margin-top: 10px;
	color: #fff;
	font-size: 1.3rem;
}

.shop-item-info a {
	margin-top: 10px;
	color: #fff;
	font-size: 1.3rem;
}

.shop-item-info .price {
	color: #00aeff;
	font-size: 1.2rem;
}

.shop-item-info .pricenv {
	color: #ff4d4d;
	font-size: 1.2rem;
}

.shop-item-info .brand {
	font-size: 1.1rem;
	color: #b9bbbe;
}

/* Button zum Anzeigen aller Fahrzeuge */
#showAllVehicles {
	background-color: #40444b;
	color: #fff;
	border: none;
	padding: 10px 20px;
	cursor: pointer;
	border-radius: 5px;
	font-size: 1.1rem;
	transition: background-color 0.3s;
	display: block;
	margin-top: 20px;
}

#showAllVehicles:hover {
	background-color: #303335;
}

/* Team-Mitglieder */
.team-member {
	display: flex;
	background-color: #40444b;
	padding: 20px;
	border-radius: 10px;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
	margin-bottom: 30px;
}

.team-member-img img {
	width: 150px;
	height: 150px;
	object-fit: cover;
	border-radius: 50%;
	margin-right: 20px;
}

.team-member-info h2 {
	color: #fff;
}

.team-member-info .rank {
	/*background-color: #f5a623;*/ 
	color: #00aeff;
	padding: 5px 10px;
	border-radius: 5px;
	margin-top: 5px;
}

.team-member-info p {
	color: #d1d3d8;
	margin-top: 10px;
}

/* News-Artikel */
.news-item-info {
	display: flex;
	flex-direction: column;
}

.news-item-info h2 {
	color: #00aeff;
	font-size: 1.8rem;
	margin-bottom: 10px;
}

.news-item-info .news-meta {
	font-size: 1rem;
	color: #72767d;
	margin-bottom: 15px;
}

.news-item-info .news-meta span {
	margin-right: 15px;
}

.news-item-info .news-text {
	font-size: 1rem;
	color: #d1d3d8;
}

/* Anpassungen für Mobile-Geräte */
@media (max-width: 768px) {
	/* Sidebar für mobile Geräte */
	#sidebar {
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		height: auto;
		background-color: #292b2f;
		z-index: 100;
		padding: 10px;
		display: flex;
		flex-direction: row;
		overflow-x: auto;  /* Erlaubt horizontales Scrollen */
		border-radius: 25px;
	}

	#sidebar ul {
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		padding: 0;
	}

	#sidebar ul li {
		padding: 10px 20px;
		text-align: center;
		margin: 0 10px;
	}

	/* Sidebar wird nicht fixiert und überlappt nicht den Inhalt */
	#content {
		margin-left: 0;
	}

	/* Einklappbare Sidebar für mobile Geräte */
	body.sidebar-open #content {
		margin-left: 0;
	}

	body.sidebar-open #sidebar {
		visibility: visible;
		width: 100%;
		top: 0;
	}

	#sidebar.collapsed {
		visibility: hidden;
	}

	/* Fahrzeug-Container im Shop (auf mobile Geräte 1-Spalte) */
	#shop-container {
		grid-template-columns: 1fr;
	}

	/* Buttons nebeneinander im Filterbereich */
	#filters {
		flex-direction: column;
		align-items: center;
	}

	.filter-btn {
		margin-bottom: 10px;
	}

	/* Team-Mitglieder im mobilen Layout (Spaltenlayout zu einem Spaltenlayout ändern) */
	.team-member {
		flex-direction: column;
		text-align: center;
	}

	.team-member-img {
		margin-bottom: 20px;
	}

	/* News-Artikel im mobilen Layout */
	.news-item {
		flex-direction: column;
		align-items: center;
		text-align: center;
		margin-right: 0;
	}

	.news-item-img {
		margin-right: 0;
		margin-bottom: 15px;
	}
}

/* Für Desktop-Ansicht: Fahrzeuge nebeneinander */
@media (min-width: 769px) {
	#shop-container {
		grid-template-columns: repeat(6, 1fr);
	}
}

/* COPYRIGHT */

#copyright {
	position: absolute;
	bottom: 45px;	   
	left: 30px;		 
	font-size: 1rem;
	color: #19A9FF;
	text-align: left;
}

#copyright p {
	margin: 0;
}

#copyright a {
	text-decoration: none;
	color: #19A9FF;
	font-size: 1.1rem;
}

#copyright a:hover {
	text-decoration: none;
	color: #4fc7ff;
}

#copyright a:active {
	text-decoration: underline;
	color: #4fc7ff;
}

/* ----- CHANGELOG ----- */

/* Changelog-Item-Layout */
.changelog-item {
	display: flex;
	align-items: center;
	background-color: #40444b;
	padding: 15px;
	border-radius: 8px;
	margin-bottom: 15px;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
	color: #d1d3d8;
	font-size: 1.1rem;
	overflow: hidden; /* Verhindert das Herauslaufen von Bildern */
}

/* Bild im 16:9-Verhältnis */
.changelog-item-img {
	width: 120px; /* Feste Breite für das Bild */
	height: 68px; /* Berechnet von 16:9 Seitenverhältnis */
	object-fit: cover; /* Sorgt dafür, dass das Bild korrekt zugeschnitten wird */
	margin-right: 15px; /* Abstand zwischen Bild und Text */
	border-radius: 5px;
}

.changelog-item.green {
	border-left: 5px solid #28a745;
}

.changelog-item.red {
	border-left: 5px solid #dc3545;
}

.changelog-item.yellow {
	border-left: 5px solid #ffc107;
}

table {
	width: 100%;
	border-collapse: collapse;
	font-family: Arial, sans-serif;
	table-layout: auto; /* fixed */
}

table th, table td {
	border: 1px solid #ccc;
	padding: 8px 12px;
	text-align: left;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

table th {
	color: black;
	background-color: #f2f2f2;
	font-weight: bold;
}

/*
table tr:nth-child(even) {
	background-color: #fafafa;
}
*/

th.max,
td.max {
    width: 1px;
}
