info {
	position: fixed;
	top: 50px;
	left: 0em;
	background-color:#1c1c1c;
	width:100%;
	height:30px;

}
        body {
            text-align: center; /* Ersetzt <center> */
            color: #d8d8d8; /* Ersetzt <font color> */
            background-color: #1c1c1c; /* Optional: dunkler Hintergrund */
            font-family: Tahoma, Arial, sans-serif;
        }
body a:link, body a:visited, body a:active {
 color: #bdbdbd;
 text-decoration: none;
 
}
body a:hover {
 color: #848484;
 text-decoration: none;
}
.td-baum {
	    font-size: clamp(1rem, 5vw, 1.5rem); /* Passt sich zwischen 10px und 16px an */
/*	font-size:1.5rem; */
	color:#d8d8d8;
	text-align:center;
	background:#585858b5;
}
/* Desktop Ansicht des Menü *
.dropdown {
  display: inline-block;
  position: relative;
  border-radius:1.0em; 
  z-index: 1;


}
.dropdown-content {
  display: none;
  position: absolute;
  width: 100%;
  overflow: auto;
  border: thin solid #585858; 
  border-radius:1.0em; 
  background-color:#1c1c1c;
}
.dropdown:hover .dropdown-content {
  display: block;
}
.dropdown-content a {
  display: block;
  color: #000000;
  padding: 5px;
  text-decoration: none;


}
.dropdown-content a:hover {
  color: #000000;
  border: 0em;thin solid #585858; 
  border-radius:10em; 
}	
/* ===========================
   Tooltip / Info-Card
   =========================== */

.tooltip{
    position:relative;
    display:inline-block;
    cursor:pointer;
}

.tooltip .tooltiptext{
    position:fixed;

    top:50%;
    left:50%;
    transform:translate(-50%,-50%);

    /* Breite */
    width:calc(100% - 30px);
    max-width:900px;

    /* Größe */
    max-height:80vh;
    box-sizing:border-box;

    /* Card */
    background:#262626;
    border:1px solid #3a3a3a;
    border-radius:18px;

    box-shadow:
        0 20px 60px rgba(0,0,0,.55),
        0 0 0 100vmax rgba(0,0,0,.55);

    /* Inhalt */
    padding:25px;

    color:#FDF7E3;
    text-align:center;
    font-size:1rem;
    line-height:1.6;

    overflow-y:auto;

    z-index:9999;

    visibility:hidden;
    opacity:0;

    transition:
        opacity:.25s ease,
        transform:.25s ease;
}

/* ===========================
   Sichtbar
   =========================== */

.tooltip .tooltiptext.show{
    visibility:visible;
    opacity:1;

    transform:translate(-50%,-50%);
}

/* ===========================
   Scrollbar
   =========================== */

.tooltip .tooltiptext::-webkit-scrollbar{
    width:8px;
}

.tooltip .tooltiptext::-webkit-scrollbar-track{
    background:#1f1f1f;
    border-radius:10px;
}

.tooltip .tooltiptext::-webkit-scrollbar-thumb{
    background:#E6B98A;
    border-radius:10px;
}

.tooltip .tooltiptext::-webkit-scrollbar-thumb:hover{
    background:#d8a56f;
}


/* ===========================
   Smartphone
   =========================== */

@media (max-width:768px){

    .tooltip .tooltiptext{
        width:calc(100% - 20px);
        max-width:none;

        max-height:85vh;

        padding:20px;

        border-radius:16px;

        font-size:1rem;
        line-height:1.55;
    }
    .tooltip .tooltiptext table{
        display:table;
        width:100% !important;
        table-layout:auto;
    }

    .tooltip .tooltiptext td:first-child{
        width:1%;
        white-space:nowrap;
    }

    .tooltip .tooltiptext td:nth-child(2){
        width:auto;
        overflow-wrap:anywhere;
        word-break:break-word;
    }
    .tooltip .tooltiptext tr{
        display:table-row;
    }

    .tooltip .tooltiptext td{
        display:table-cell;
        width:auto !important;
        padding:8px 6px;
        vertical-align:middle;
    }
}

.tooltip2 {
  position: fixed;
  display: inline-block;
  border-bottom: 1px dotted black;
 top: 70px;  /* Abstand vom oberen Rand */
  right: 20px; /* Abstand vom rechten Rand */
}
.tooltip2 .tooltiptext2 {
	visibility: hidden;
	width: 250px;
	background-color: #1c1c1c;
	color: #fff;
	text-align: left;
	border-radius: 6px;
	padding: 5px 10px;
	font-size:1em;
  /* Position the tooltip */
	position: fixed; 
	z-index: 1000;
 top: 100px;  /* Abstand vom oberen Rand */
  right: 20px; /* Abstand vom rechten Rand */
 /* top: -5px; */
    /* Standardmäßig ausblenden */
	opacity: 0;
	transition: opacity 0.3s ease-in-out;

}

.tooltip2:hover .tooltiptext2 {
  visibility: visible;
  opacity: 1;
}
.tooltip2_mobil {
  position: fixed;
  display: inline-block;
  border-bottom: 1px dotted black;
 top: 50px;  /* Abstand vom oberen Rand */
  right: 50px; /* Abstand vom rechten Rand */
}
.tooltip2_mobil .tooltiptext2_mobil {
  position: fixed; /* Fixiert im Viewport */
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); /* Zentriert exakt */
  
  border: thin solid #d8d8d8;
  width: 90%;
  max-width: 500px;

  background-color: #1c1c1c;
  color: #fff;
  text-align: left;
  border-radius: 10px;
  padding: 20px;
  font-size: 2em;
  z-index: 9999;

  visibility: hidden;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.tooltip2_mobil:hover .tooltiptext2_mobil {
  visibility: visible;
  opacity: 1;
}

.button-head {
	font-size:1.5rem;
	color:#d8d8d8;
	border-style:solid;
	border-radius:10px;
}
.button-field {
	font-size:1.5rem;
	color:#d8d8d8;
	border-style:solid;
	border-radius:7px;
	background:#1c1c1c;
}
.td-text {
	font-size:1.5em;
	color:#d8d8d8;

}
.td-text2 {
	font-size:1.5rem;
	color:#d8d8d8;

}
.td-text3 {
	font-size:1.5rem;
	color:#d8d8d8;
	text-align:center;

}
header {

	position: fixed;
	top: 0em;
	width:96.5%;
	background: #1C1C1C;
	border:thin solid #d8d8d8;
	border-radius:0em 0em 0.5em 0.5em;
	padding: 1em;
	color:#d8d8d8;
	font-size:1.5rem;
}
.div-main {

	background: #1C1C1C;
#	border:thin solid #d8d8d8;
	border-radius:0.5em;
	padding: 0.5em;
	color:#d8d8d8;
	font-size:2.5em;
}
footer {

	position: fixed;
#	position: sticky;
	bottom: 0em;
	width:99.05%;
	background: #1C1C1C;
	border:thin solid #d8d8d8;
	border-radius:0.5em 0.5em 0em 0em;
	padding: 0em;
	color:#d8d8d8;
	font-size:1.5rem;
	text-align:center;
}
main {
	display: block;
	top:10em;
	background: #1c1c1c;
	min-width: 16em;
	/* Mindestbreite (der Überschrift) verhindert Anzeigefehler in modernen Browsern */
}

.kal_vormonat_tag {
	font-size:2rem;
	text-align: center;
	background-color:Transparent;
	color:#585858;
	width:50px;
	height:50px;
	border: thin solid #585858;
	border-radius: 0.5em;
}
.kal_standard_tag_turnier {
	font-size:2rem;
	text-align: center;
	background-color:Transparent;
	color:#2E9AFE;
	width:50px;
	height:50px;
	border: solid #2E9AFE;
	border-radius: 0.5em;
}
.kal_standard_tag_turnier_tooltip {
	font-size:1rem;
	text-align: center;
	background-color:Transparent;
	color:#2E9AFE;
	width:30px;
	height:30px;
	border: solid #2E9AFE;
	border-radius: 0.5em;
}
.kal_standard_tag_turnier_tooltip_mobil {
	font-size:2rem;
	text-align: center;
	background-color:Transparent;
	color:#2E9AFE;
	width:50px;
	height:50px;
	border: solid #2E9AFE;
	border-radius: 0.5em;
}
.kal_standard_tag_turnier:focus,
.kal_standard_tag_turnier:hover
{
	box-shadow: rgb(46 154 254 / 0.9) 0px .25em 1em, inset rgb(46 154 254 / 0.15) 0px -.5em 1em;
}
.kal_vormonat_tag_turnier {
	font-size:2rem;
	text-align: center;
	background-color:Transparent;
	color:#2E9AFE;
	width:50px;
	height:50px;
	border: thin solid #585858;
	border-radius: 0.5em;
}
.kal_vormonat_tag_turnier:focus,
.kal_vormonat_tag_turnier:hover
{
	box-shadow: rgb(46 154 254 / 0.9) 0px .25em 1em, inset rgb(46 154 254 / 0.15) 0px -.5em 1em;
}
.kal_standard_tag {
	font-size:2rem;
	text-align: center;
	background-color:Transparent;
	color:#d8d8d8;
	width:50px;
	height:50px;
	border: solid #d8d8d8;
	border-radius: 0.5em;
}
.kal_monat_tag {
	font-size:2rem;
	text-align: center;
	color:#d8d8d8;
}
.kal_sonntag_tag {
	font-size:2rem;
	text-align: center;
	color:#cd3700;
	width:50px;
	height:50px;
}
.kal_weekday_tag {
	font-size:2rem;
	text-align: center;
	color:#d8d8d8;
	width:50px;
	height:50px;
}
.kal_aktueller_tag {
	font-size:2rem;
	text-align: center;
	background-color:Transparent;
	color:#d8d8d8;
	width:50px;
	height:50px;
	border: solid #cd3700;
	border-radius: 0.5em;
}
.kal_aktueller_tag_tooltip {
	font-size:1rem;
	text-align: center;
	background-color:Transparent;
	color:#d8d8d8;
	width:30px;
	height:30px;
	border: solid #cd3700;
	border-radius: 0.5em;
}
.kal_aktueller_tag_tooltip_mobil {
	font-size:2rem;
	text-align: center;
	background-color:Transparent;
	color:#d8d8d8;
	width:50px;
	height:50px;
	border: solid #cd3700;
	border-radius: 0.5em;
}
.kal_aktueller_tag_turnier {
	font-size:2rem;
	text-align: center;
	background-color:Transparent;
	color:#2E9AFE;
	width:50px;
	height:50px;
	border: solid #cd3700;
	border-radius: 0.5em;
}
.kal_aktueller_tag_turnier:focus,
.kal_aktueller_tag_turnier:hover
{
	box-shadow: rgb(46 154 254 / 0.9) 0px .25em 1em, inset rgb(46 154 254 / 0.15) 0px -.5em 1em;
}
.kal_next_back_button {
	font-size:2rem;
	text-align: center;
	valign: middle;
	background-color:Transparent;
	color:#2E9AFE;
	width:50px;
	height:60px;
	border: solid #2E9AFE;
	border-radius: 0.5em;
}
.kal_next_back_button:focus,
.kal_next_back_button:hover
{
	box-shadow: rgb(46 154 254 / 0.9) 0px .25em 1em, inset rgb(46 154 254 / 0.15) 0px -.5em 1em;
}
    .today {
        background-color: #ffcc00; /* Farbe für den aktuellen Tag */
        font-weight: bold;
    }

    .selected_date {
        background-color: #ff6600; /* Farbe für den ausgewählten Tag */
        font-weight: bold;
    }       .container {
            max-width: 800px;
            margin:  auto;
            padding: 20px;
        /*    background: #f4f4f4; */
            border-radius: 8px; 
            box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
        }
        h1 {
            text-align: center;
            color: #d8d8d8;
        }
        p {
            font-size: 1.8rem;
            color: #d8d8d8;
        }
        .highlight {
			display: inline-block; /* Stellt sicher, dass es sich eigenständig verhält */
            font-weight: bold;
            color: #d9534f;
            font-size: 1.5rem;
       }
#chat {
    display: flex;
    flex-wrap: wrap; /* Flex-Elemente brechen um */
    gap: 20px; /* Abstand zwischen den Tabellen */
    height: auto; /*650px;*/
    overflow-y: auto;
    border: 0px solid #ccc;
    padding: 10px;
    align-items: center; /* Zentriert die Tabellen vertikal im Container */
    justify-content: center; /* Zentriert die Tabellen horizontal im Container */
    position: relative;
    top: 50%;
    transform: translateY(0%); /* Korrigiert die vertikale Position */
	z-index: 1;
}
/* checkbox Style Desktop*/
.checkbox-wrapper {
  display: inline-block;
  position: relative;
  cursor: pointer;
  font-size: 1.5rem;
  padding-left: 2rem;
  user-select: none;
}

.checkbox-wrapper input[type="checkbox"] {
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
  width: 1.5rem;
  height: 1.5rem;
  margin: 0;
  cursor: pointer;
}

.checkbox-wrapper .custom-checkbox {
  position: absolute;
  top: 0;
  left: 0;
  height: 1.5rem;
  width: 1.5rem;
  border: 2px solid #d8d8d8;
  border-radius: 3px;
}

.checkbox-wrapper input[type="checkbox"]:checked ~ .custom-checkbox {
  background-color: #1c1c1c;
  border-color: #0f0;
}

/* Rote Umrandung bei Fehler */
.checkbox-wrapper.error .custom-checkbox {
  border-color: #610B0B;
}
/* Schalter checkbox
/* Der Container für den Switch */
.switch {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 18px;
  margin-right: 10px;
}

/* Verstecke das Standard-Checkbox-Input */
.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

/* Der Schieberegler */
.slider {
  position: absolute;
  cursor: pointer;
  background-color: #303030;
  border-radius: 34px;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transition: .4s;
  border: 2px solid grey;
}

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

/* Wenn aktiviert */
.switch input:checked + .slider {
  background-color: #303030;
  border: 2px solid #228b22;
}

/* Schieber nach rechts schieben */
.switch input:checked + .slider::before {
  transform: translateX(33px);
  background-color: #228b22;
/*  border-color: 2px solid #228b22; */
}

/* Fehlerklasse */
.switch input.error + .slider {
  border-color: red;
}
/* checkbox Style Mobil*/
.checkbox-wrapper {
  display: inline-block;
  position: relative;
  cursor: pointer;
  font-size: 1.5rem;
  padding-left: 2rem;
  user-select: none;
}

.checkbox-wrapper input[type="checkbox"] {
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
  width: 1.5rem;
  height: 1.5rem;
  margin: 0;
  cursor: pointer;
}

.checkbox-wrapper .custom-checkbox {
  position: absolute;
  top: 0;
  left: 0;
  height: 1.5rem;
  width: 1.5rem;
  border: 2px solid #d8d8d8;
  border-radius: 3px;
}

.checkbox-wrapper input[type="checkbox"]:checked ~ .custom-checkbox {
  background-color: #1c1c1c;
  border-color: #0f0;
}

/* Rote Umrandung bei Fehler */
.checkbox-wrapper.error .custom-checkbox {
  border-color: #610B0B;
}
/* Schalter checkbox
/* Der Container für den Switch */
.switch_mobil {
  position: relative;
  display: inline-block;
  width: 110px;
  height: 58px;
  margin-right: 10px;
}

/* Verstecke das Standard-Checkbox-Input */
.switch_mobil input {
  opacity: 0;
  width: 0;
  height: 0;
}

/* Der Schieberegler */
.slider_mobil {
  position: absolute;
  cursor: pointer;
  background-color: #303030;
  border-radius: 34px;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transition: .4s;
  border: 2px solid grey;
}

.slider_mobil::before {
  content: "";
  position: absolute;
  height: 50px;
  width: 50px;
  left: 2px;
  bottom: 2px;
  background-color: white;
  border-radius: 50%;
  transition: .4s;
}

/* Wenn aktiviert */
.switch_mobil input:checked + .slider_mobil {
  background-color: #303030;
  border: 2px solid #228b22;
}

/* Schieber nach rechts schieben */
.switch_mobil input:checked + .slider_mobil::before {
  transform: translateX(53px);
  background-color: #228b22;
/*  border-color: 2px solid #228b22; */
}

/* Fehlerklasse */
.switch_mobil input.error + .slider_mobil {
  border-color: red;
}


.playertip-content {
    display: none; /* Start versteckt */
 /*   position: absolute; */
    background-color: #333;
    color: #fff;
    padding: 10px;
    border-radius: 5px;
    z-index: 1000;
    white-space: nowrap;
    font-size: 1.5rem;
    box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.3);
}

.playertip-trigger {
    position: relative;
    cursor: pointer;
}
.playertip-content2 {
    display: none; /* Start versteckt */
 /*   position: absolute; */
    background-color: #333;
    color: #fff;
    padding: 10px;
    border-radius: 5px;
    z-index: 1000;
    white-space: nowrap;
    font-size: 1.5rem;
    box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.3);
}

.playertip-trigger2 {
    position: relative;
    cursor: pointer;
}
/* ============================================================
   NAVIGATION – GRUNDSTRUKTUR
   ============================================================ */

.navigation-wrapper {
    width: 100%;
    box-sizing: border-box;
}


/* ============================================================
   HAUPTNAVIGATION
   ============================================================ */

.main-navigation {
    width: 100%;
    box-sizing: border-box;
    text-align: left;
    position: relative;
    z-index: 9999;
}


/* ============================================================
   DESKTOP HAUPTMENÜ
   ============================================================ */

.main-menu {
    display: flex;
    flex-direction: column;
    align-items: stretch;

    width: 280px;

    margin: 10px 0 15px 10px;
    padding: 12px;

    box-sizing: border-box;

    gap: 14px;

    background: rgba(28, 28, 28, 0.96);

    border: 1px solid #555;
    border-radius: 12px;

    box-shadow:
        0 8px 25px rgba(0, 0, 0, 0.45);
}


/* ============================================================
   MENÜGRUPPEN
   ============================================================ */

.menu-group {
    display: flex;
    flex-direction: column;

    width: 100%;

    box-sizing: border-box;

    gap: 6px;
}


/* ============================================================
   GRUPPENÜBERSCHRIFT
   ============================================================ */

.menu-group-title {
    width: 100%;

    box-sizing: border-box;

    padding: 4px 8px;

    color: #E6B98A;

    font-size: 0.9rem;
    font-weight: bold;

    text-align: left;

    border-bottom: 1px solid #444;
}


/* ============================================================
   HAUPTMENÜ BUTTONS
   ============================================================ */

.main-menu-button {
    display: flex;

    width: 100%;
    min-height: 42px;

    box-sizing: border-box;

    align-items: center;
    justify-content: flex-start;

    padding: 9px 12px;

    color: #d8d8d8;

    background: #333;

    border: 1px solid #666;
    border-radius: 8px;

    text-decoration: none;

    font-size: 1.1rem;

    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        transform 0.15s ease;
}


/* Hover */

.main-menu-button:hover {
    background: #585858;

    border-color: #aaa;

    transform: translateX(3px);
}


/* ============================================================
   LOGOUT
   ============================================================ */

.logout-button {
    border-color: #8a4444;
}


/* ============================================================
   AKTUELLE TURNIERE
   ============================================================ */

.current-tournaments {
    gap: 7px;
}


/* ============================================================
   STATUSZEILE
   ============================================================ */

.current-tournament-status {
    display: flex;

    align-items: center;

    gap: 6px;

    padding: 2px 6px;

    font-size: 0.85rem;
}


.status-active {
    color: #088A08;
    font-weight: bold;
}


.status-waiting {
    color: orange;
    font-weight: bold;
}


.status-separator {
    color: #777;
}


/* ============================================================
   TURNIER BUTTON
   ============================================================ */

.tournament-button {
    display: flex;

    flex-direction: column;

    width: 100%;

    box-sizing: border-box;

    padding: 9px 10px;

    color: #d8d8d8;

    background: #1c1c1c;

    border: 2px solid;

    border-radius: 8px;

    text-decoration: none;

    text-align: left;

    transition:
        background 0.2s ease,
        transform 0.15s ease;
}


.tournament-button:hover {
    background: #333;

    transform: translateX(3px);
}


.tournament-button.active {
    border-color: #088A08;
}


.tournament-button.waiting {
    border-color: orange;
}


.tournament-name {
    font-size: 1rem;
}


.tournament-button small {
    display: block;

    margin-top: 3px;

    font-size: 0.8rem;

    opacity: 0.75;
}


/* ============================================================
   TURNIERVERWALTUNG
   ============================================================ */

.menu-group-management {
    margin-top: 2px;
}


.tournament-management {
    display: flex;

    width: 100%;
    min-height: 46px;

    box-sizing: border-box;

    align-items: center;
    justify-content: center;

    padding: 10px 14px;

    color: #E6B98A;

    background: #262626;

    border: 2px solid #E6B98A;
    border-radius: 9px;

    text-decoration: none;

    font-size: 1.1rem;
    font-weight: bold;

    transition:
        background 0.2s ease,
        transform 0.15s ease;
}


.tournament-management:hover {
    background: #3a3a3a;

    transform: translateX(3px);
}


/* ============================================================
   TURNIER-NAVIGATION
   ============================================================ */

.tournament-navigation {
    width: 100%;

    box-sizing: border-box;

    margin: 5px 0 10px 0;
    padding: 0 10px;
}


.tournament-navigation-inner {
    display: flex;

    flex-direction: row;

    flex-wrap: wrap;

    align-items: center;
    justify-content: flex-start;

    gap: 8px;

    width: 100%;
}


/* ============================================================
   TURNIER-NAVIGATION BUTTONS
   ============================================================ */

.tournament-nav-button {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-width: 150px;
    min-height: 42px;

    box-sizing: border-box;

    padding: 8px 14px;

    color: #d8d8d8;

    background: #333;

    border: 1px solid #777;
    border-radius: 9px;

    text-decoration: none;

    font-size: 1.1rem;

    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        transform 0.15s ease;
}


.tournament-nav-button:hover {
    background: #585858;

    border-color: #aaa;

    transform: translateY(-1px);
}


.tournament-nav-button.selected {
    background: #585858;

    border-color: #E6B98A;

    color: #E6B98A;

    font-weight: bold;
}


/* ============================================================
   SEITENTITEL
   ============================================================ */

.page-title {
    width: 100%;

    box-sizing: border-box;

    margin: 8px 0 15px 0;

    padding: 0 10px;

    color: #d8d8d8;

    font-size: 1.3rem;
    font-weight: bold;

    text-align: left;
}


/* ============================================================
   MOBILE MENÜBUTTON
   ============================================================ */

.mobile-menu-toggle {
    display: none;
}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 768px) {


    /* ========================================================
       NAVIGATION
       ======================================================== */

    .navigation-wrapper {
        width: 100%;
    }


    .main-navigation {
        width: 100%;

        position: relative;

        z-index: 9999;
    }


    /* ========================================================
       MENÜBUTTON
       ======================================================== */

    .mobile-menu-toggle {
        display: flex;

        align-items: center;
        justify-content: flex-start;

        gap: 10px;

        width: auto;

        margin: 10px 0 10px 10px;

        padding: 11px 16px;

        color: #d8d8d8;

        background: #1c1c1c;

        border: 2px solid #666;
        border-radius: 10px;

        font-size: 1.4rem;

        line-height: 1.2;

        cursor: pointer;
    }


    .mobile-menu-toggle:hover {
        background: #333;

        border-color: #aaa;
    }


    .menu-icon {
        font-size: 1.5rem;
    }


    .menu-label {
        font-size: 1.2rem;
    }


    /* ========================================================
       HAUPTMENÜ GESCHLOSSEN
       ======================================================== */

    .main-menu {
        display: none;

        width: calc(100% - 20px);
        max-width: 400px;

        margin: 10px 0 15px 10px;

        padding: 10px;

        gap: 12px;

        transform-origin: left top;

        transform: translateX(-30px);

        opacity: 0;
    }


    /* ========================================================
       HAUPTMENÜ GEÖFFNET
       ======================================================== */

    .main-menu.open {
        display: flex;

        animation: menuSlideFromLeft 0.25s ease forwards;
    }


    @keyframes menuSlideFromLeft {

        from {
            opacity: 0;

            transform: translateX(-30px);
        }

        to {
            opacity: 1;

            transform: translateX(0);
        }

    }


    /* ========================================================
       MOBILE MENÜGRUPPEN
       ======================================================== */

    .menu-group {
        gap: 6px;
    }


    .menu-group-title {
        padding: 5px 8px;

        font-size: 0.95rem;
    }


    /* ========================================================
       MOBILE BUTTONS
       ======================================================== */

    .main-menu-button {
        min-height: 48px;

        padding: 11px 13px;

        font-size: 1.2rem;
    }


    /* ========================================================
       AKTUELLE TURNIERE
       ======================================================== */

    .current-tournament-status {
        font-size: 0.9rem;
    }


    .tournament-button {
        min-height: 55px;

        padding: 10px 12px;
    }


    .tournament-name {
        font-size: 1.1rem;
    }


    .tournament-button small {
        font-size: 0.85rem;
    }


    /* ========================================================
       TURNIERVERWALTUNG
       ======================================================== */

    .tournament-management {
        min-height: 50px;

        font-size: 1.2rem;
    }


    /* ========================================================
       TURNIER-NAVIGATION
       ======================================================== */

    .tournament-navigation {
        width: 100%;

        margin: 8px 0 12px 0;

        padding: 0 10px;
    }


    .tournament-navigation-inner {
        flex-direction: column;

        align-items: stretch;

        gap: 7px;
    }


    .tournament-nav-button {
        width: 100%;

        min-width: 0;

        min-height: 50px;

        font-size: 1.2rem;
    }


    /* ========================================================
       SEITENTITEL
       ======================================================== */

    .page-title {
        margin: 8px 0 12px 0;

        font-size: 1.25rem;

        text-align: center;
    }

}
/* ============================================================
   DESKTOP LAYOUT
   MENÜ LINKS / CONTENT RECHTS
   ============================================================ */

@media (min-width: 769px) {

    /* --------------------------------------------------------
       Navigation als linke Seitenleiste
       -------------------------------------------------------- */

    .navigation-wrapper {
        position: fixed;
        top: 90px;
        left: 0;

        width: 300px;
        height: calc(100vh - 140px);

        box-sizing: border-box;

        overflow-y: auto;
        overflow-x: hidden;

        z-index: 9000;
    }


    .main-navigation {
        width: 300px;
        box-sizing: border-box;
    }


    /* --------------------------------------------------------
       Hauptmenü
       -------------------------------------------------------- */

    .main-menu {
        width: 280px;

        margin: 10px;

        box-sizing: border-box;
    }


    /* --------------------------------------------------------
       Hauptinhalt nach rechts verschieben
       -------------------------------------------------------- */

main {
    display: block;

    width: calc(100% - 330px);
    min-width: 0;

    margin-left: 330px;
    padding: 20px 15px 60px;

    box-sizing: border-box;

    position: relative;
    top: 90px;
}


    /* --------------------------------------------------------
       Seitentitel
       -------------------------------------------------------- */

    .page-title {
        width: 100%;
        box-sizing: border-box;
    }


    /* --------------------------------------------------------
       Turnier-Navigation im Content
       -------------------------------------------------------- */

    .tournament-navigation {
        width: 100%;
        box-sizing: border-box;
    }


    .tournament-navigation-inner {
        width: 100%;
        box-sizing: border-box;
            font-size: 2.2rem;

            margin-bottom: 25px;

            color: #d8d8d8;
    }

}
/* ============================================================
   MOBILE – GLOBALE DARSTELLUNG
   Verhindert übergroße Inhalte auf Smartphones
   ============================================================ */

@media (max-width: 768px) {

    html {
        font-size: 16px;
    }

    body {
        font-size: 1rem;
    }

    main {
        margin-left: 0;
        width: 100%;
        padding: 70px 10px 60px 10px;
        box-sizing: border-box;
    }

    .div-main {
        font-size: 1rem;
    }

    .td-text,
    .td-text2,
    .td-text3 {
        font-size: 1rem;
    }

    .page-title {
        font-size: 1.25rem;
    }

    .tournament-navigation-inner {
        font-size: 1rem;
    }
	.playertip-content {

    font-size: 1rem;

}
h1 {
 font-size:1rem;
 }
 p {
	 font-size:1rem;
 }
}
.places-table {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    border: 1px solid white;
    border-collapse: collapse;
    box-sizing: border-box;
}