
:root {
  --width: 600px;
}


/* latin */
@font-face {
  font-family: 'Tangerine';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/Tangerine-Regular.ttf');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
  font-family: 'Tangerine';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/Tangerine-Bold.ttf');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

html, body {
    max-width: 100%;
    overflow-x: hidden;
}


body {
	background: #690101;
	background-image:url('../images/background.png');
	background-position:center;
	background-attachment:fixed;
	background-repeat:no-repeat;
	background-size:cover;
	overflow-y: auto; /* Show vertical scrollbar */
}


#loginbox {
    position: relative; /* WICHTIG! */
    width: 500px;
    margin: 50px auto 0 auto;
    text-align: center;

    font-family: 'Tangerine', cursive;
    font-size: 36px;

    background-color: #f5f5f0;
    border-radius: 15px;
    box-shadow: 2px 3px 20px black, 0 0 60px #8a4d0f inset;
    padding: 20px;
}


input.tokeninput {
	width: 130px;
	text-align: center;
	text-transform: uppercase;
	margin-right: 5px;
	font-size: 34px;
	font-family: 'Tangerine', cursive;
}

button.tokenbutton {
	font-size: 34px;
	font-family: 'Tangerine', cursive;
	border-radius: 10px;
	border: 1px solid #690101;
}
button.tokenbutton:hover {
	border: 1px solid #f2f2f2;
	background-color: #690101;
	color: #f2f2f2;
}

.page {
  position: relative;
  z-index: 0;
  box-sizing: border-box;
  width: var(--width);
  margin: 30px auto;
  
  font-family: 'Tangerine', cursive;
  font-size: 26px;
  
  border: 0px solid #fff;
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0,0,0,0.5);
  /* Background lines */
  background-image: linear-gradient(#f5f5f0 1.3rem, #ccc 1.4rem);
  background-size: 100% 1.4rem;
  box-shadow: 2px 3px 20px black, 0 0 60px #8a4d0f inset;
  line-height: 1.4rem;
  padding: 1.4rem 0.5rem 0.3rem 0.5rem;  
}

.titre {
  color: #000;
  display: block;
  font-weight: bold;
  text-decoration: underline;
  padding-bottom: 1.2rem;
  font-size: 1.5em;
}

.page p {
  margin: 0;
  text-indent: 1rem;
  padding-bottom: 1.2rem;
}

.page u {
	line-height: 2rem;
}

#login_icon_left {
	background-image: url("https://dm-schmiede.cyberian-networks.de/images/Logo_transparent_1.png");
	background-size: contain;
	width: 100px;
	height: 100px;
	top:0px;
    left:0px;
	z-index:16;
	position: absolute;
} 

#login_icon_right {
	background-image: url("https://dm-schmiede.cyberian-networks.de/images/Logo_transparent_1.png");
	background-size: contain;
	width: 100px;
	height: 100px;
	top:0px;
    right:0px;
	z-index:16;
	position: absolute;
} 


ul.clickable { 
	list-style-type: none; 
	cursor: pointer;
	margin-top: 6px;
    margin-bottom: 6px;
	padding-left: 12px;
}

li.clickable { 
	cursor: pointer;
	margin-top: 6px;
    margin-bottom: 6px;
}

li.file {
	cursor: default;
	display: flex;
    align-items:center;
}

strong { 
	color: #2c3e50; 
}

a {
	color: #690101;
}
a:hover  {
	color: #000000;
	text-decoration: underline dotted #690101;
	text-decoration-thickness: 1px;
}
a:visited {
	color: #690101;
}

a.nodecoration {
	text-decoration: none;
}
a.nodecoration:hover {
	color: #000000;
	text-decoration: underline dotted #690101;
	text-decoration-thickness: 1px;
}

.menu {
	display: inline-block;
	width: var(--width);
	margin: 0px auto;
	background-color: rgb(0 0 0 / 50%);
	border: 0px solid #fff;
	border-radius: 10px; 
	z-index: 20;
	font-size: 24px;
	color: #f2f2f2;
	font-family: 'Tangerine', cursive;
}

.description {
	display: inline-block;
	width: var(--width);
	margin: 0px auto;
	background-color: rgb(0 0 0 / 50%);
	border: 0px solid #fff;
	border-radius: 10px; 
	z-index: 20;
	font-size: 24px;
	color: #f2f2f2;
	font-family: 'Tangerine', cursive;
	text-align: left;
}

.burgerMenuButton {
	background-image: url("https://dm-schmiede.cyberian-networks.de/images/burgerMenu.png");
	background-size: contain;
	width: 30px;
	height: 30px;
	top:10px;
    left:10px;
	z-index:21;
	position: absolute;
}
.burgerMenu {
	display: none;
	margin: 0px auto;
	padding: 10px;
	background-color: rgb(0 0 0 / 90%);
	border: 0px solid #fff;
	border-radius: 10px; 
	z-index: 21;
	font-size: 24px;
	color: #f2f2f2;
	position: absolute;
	top:45px;
    left:10px;
}

/* Einzelne Menülinks */
.burgerLink {
    display: block;
    padding: 6px 0;
    margin: 2px 0;
    color: #222;
    text-decoration: none;
    font-size: 1rem;
    font-weight: 500;
}

/* Hover-Effekt */
.burgerLink:hover {
    text-decoration: underline;
    color: #000;
}

/* Optional: etwas mehr Abstand zwischen Kategorien */
.burgerMenu hr {
    border: none;
    border-top: 1px solid #dcdcdc;
    margin: 10px 0;
}


.titlebar {
	display: inline-block;
	width: var(--width);
	margin: 30px auto;
	background-color: rgb(0 0 0 / 50%);
	border: 0px solid #fff;
	border-radius: 10px; 
	z-index: 20;
	font-size: 24px;
	color: #f2f2f2;
	font-family: 'Tangerine', cursive;
}

.breadcrumb {
	display: inline-block;
	width: var(--width);
	background-color: rgb(0 0 0 / 50%);
	border: 0px solid #fff;
	border-radius: 10px; 
	z-index: 20;
	font-size: 14px;
	color: #f2f2f2;
}

.breadcrumb a {
    color: #f2f2f2;
    text-decoration: none;
}

.breadcrumb a:hover {
    color: #690101;
}

.breadcrumb span {
    color: #dcdcdc;
}

.menuwrapper {
	margin: 10px auto;
	text-align:center;
}

input.tokeninput_small {
	width: 90px;
	text-align: center;
	text-transform: uppercase;
	margin-right: 5px;
	font-size: 24px;
	font-family: 'Tangerine', cursive;
}

button.tokenbutton_small {
	font-size: 24px;
	font-family: 'Tangerine', cursive;
	border-radius: 10px;
	border: 1px solid #690101;
}
button.tokenbutton_small:hover {
	border: 1px solid #f2f2f2;
	background-color: #690101;
	color: #f2f2f2;
}

#footer {
    position: fixed;
    bottom: 0;
	left: 0;
    width: 100%;
	text-align:center;
	color: #f2f2f2;
	font-size: 0.75em;
    background: #690101;
	z-index: 12;
}

.nohighlighting {
	color: #f2f2f2;
	text-decoration: none;
}

.nohighlighting:hover  {
	color: #000000;
	text-decoration: none;
}

.nohighlighting:visited {
	color: #f2f2f2;
}

.burgerLink {
	color: #f2f2f2;
	text-decoration: none;
}

.burgerLink:hover  {
	color: #690101;
	text-decoration: none;
}

.burgerLink:visited {
	color: #f2f2f2;
}
.burgerLink:visited:hover {
	color: #690101;
}

#noScript {
    display: inline-block;
	width: var(--width);
	margin: 10px auto;
	border: 0px solid #fff;
	border-radius: 10px; 
	z-index: 21;
	text-align:center;
	color: #000;
	font-size: 0.75em;
    background: #f08c00;
}

.hoverable:hover {background-color:rgba(211, 211, 211, 0.6);}

.tokenspan {
	font-family: system-ui;
	font-size: 0.5em;
}

table.serverlist {
    border-collapse: separate;
    border-spacing: 0 15px; /* horizontal 0, vertikal 15px */
	font-size: 100%;
	width:100%;
	border-radius: 5px;
  }


.blink {
	animation: blinker 1.5s linear infinite;
	font-weight: bold;
    color: red;
	font-size: 2em;
    }
    
@keyframes blinker {
	50% {
		opacity: 0.1;
        }
	}
	

.infospan {
	font-size: 0.75em;
	line-height: 0.8em;
}



.dummy {
	margin-top: 0;
    font-size: 1.3rem;
    color: #f2f2f2;
	display: none;
}


/* Zentrier-Container */
.centerer {
    width: 100%;
    text-align: center; /* zentriert den Dashboard-Block */
}

/* Dashboard-Container */
.dashboard {
    display: inline-block; /* macht das gesamte Grid zentrierbar */
    text-align: center;    /* zentriert die Tiles */
    max-width: 1100px;     /* verhindert zu breite Zeilen */
    width: 100%;
}

/* Einzelne Kachel */
.dash-tile {
    display: inline-block;
    vertical-align: top;
    width: 300px;
    margin: 10px;
    background: #fff;
    border: 1px solid #cfcfcf;
    padding: 10px;
    text-align: left;
	border: 0px solid #fff;
	
	border-radius: 10px;
	box-shadow: 0 0 10px rgba(0,0,0,0.5);
	/* Background lines */
	background-image: linear-gradient(#f5f5f0 1.3rem, #ccc 1.4rem);
	background-size: 100% 1.4rem;
	box-shadow: 2px 3px 20px black, 0 0 60px #8a4d0f inset;
	line-height: 1.4rem;
}
.dash-tile-wide {
    display: inline-block;
    vertical-align: top;
    min-width: 300px;
    margin: 10px;
    background: #fff;
    border: 1px solid #cfcfcf;
    padding: 10px;
    text-align: left;
	border: 0px solid #fff;
	
	border-radius: 10px;
	box-shadow: 0 0 10px rgba(0,0,0,0.5);
	/* Background lines */
	background-image: linear-gradient(#f5f5f0 1.3rem, #ccc 1.4rem);
	background-size: 100% 1.4rem;
	box-shadow: 2px 3px 20px black, 0 0 60px #8a4d0f inset;
	overflow-x: auto;
	line-height: 1.4rem;
}

.dash-tile h3 {
	margin-top: 0px;
	padding-top: 0px;
}

/* Mobile: 1 Kachel pro Zeile, sauber zentriert */
@media (max-width: 700px) {
    .dashboard {
        text-align: center; /* wichtig für Zentrierung */
    }

    .dash-tile {
        width: 90%;
        max-width: 350px;
        display: block;
        margin-left: auto;
        margin-right: auto;
    }

	.dash-tile-wide {
        width: 90%;
        max-width: 350px;
        overflow-x: auto;
        overflow-y: hidden;
        display: block;
        white-space: nowrap; /* optional, falls Inhalt umbrechen soll */
    }

	.dash-tile-wide td,
	.dash-tile-wide .centered {
		white-space: normal; /* überschreibt nowrap */
	}


    :root {
        --width: 100%;
    }

    .page,
    .menu,
    .description,
    .titlebar,
    #noScript {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
	
	#loginbox {
    width: 90%;
    }
}

/* NEW ITEMS */
td.centered {
  text-align: center;
  vertical-align: top;
  max-width: 150px;
}

.item-image {
	border-radius: 8px;
	width: 140px;
}

.item-text {
	margin-top: 0;
	margin-bottom: 0;
	text-align: center;
}

.item-wrapper {
    position: relative;
    display: inline-block;
    overflow: hidden;
	text-align: center;
}

.corner-ribbon {
    position: absolute;
    top: 12px;
    left: -45px;
    width: 140px;
	height: 25px;
    background: #d40000;
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    padding: 0;
	display: flex;
    align-items: center;
    justify-content: center;
    transform: rotate(-45deg);
    z-index: 10;
    pointer-events: none;
}
